衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MySQL數據庫:如何操作禁止重復插入數據

如意 ? 來源:今日頭條 ? 作者:Java成長催化師 ? 2020-10-08 14:15 ? 次閱讀

在MySQL進行數據插入操作時,總是會考慮是否會插入重復數據,之前的操作都是先根據主鍵或者唯一約束條件進行查詢,有就進行更新沒有就進行插入。代碼反復效率低下。

新建表格

MySQL數據庫:如何操作禁止重復插入數據

添加三條數據如下:

MySQL數據庫:如何操作禁止重復插入數據

我們這邊可以根據插入方式進行規避:

1. insert ignore

insert ignore 會自動忽略數據庫已經存在的數據(根據主鍵或者唯一索引判斷),如果沒有數據就插入數據,如果有數據就跳過插入這條數據。

插入SQL如下: insert ignore into person (id,name,age,address) values(3,‘那誰’,23,‘甘肅省’),(4,‘我的天’,25,‘浙江省’);

再次查看數據庫就會發現僅插入id為4的數據,由于數據庫中存在id為3的數據所以被忽略。

MySQL數據庫:如何操作禁止重復插入數據

2. replace into

replace into 首先嘗試插入數據到表中, 1. 如果發現表中已經有此行數據(根據主鍵或者唯一索引判斷)則先刪除此行數據,然后插入新的數據。 2. 否則,直接插入新數據。

插入SQL如下: replace into person (id,name,age,address) values(3,‘那誰’,23,‘甘肅省’),(4,‘我的天’,25,‘浙江省’);

首先我們將表中數據恢復,然后進行插入操作后發現id為3的數據發生了改變同時新增了id為4的數據。

MySQL數據庫:如何操作禁止重復插入數據

3. insert on duplicate key update

insert on duplicate key update 如果在insert into語句的末尾指定了on duplicate key update + 字段更新,則會在出現重復數據(根據主鍵或者唯一索引判斷)的時候按照后面字段更新的描述對該信息進行更新操作。

插入SQL如下: insert into person (id,name,age,address) values(3,‘那誰’,23,‘甘肅省’) on duplicate key update name=‘那誰’, age=23, address=‘甘肅省’;

首先我們將表中數據恢復,然后在進行插入操作時,發現id為3的數據發生了改變,進行了更新操作。

MySQL數據庫:如何操作禁止重復插入數據

我們可以根據自己的業務需求進行方法的選擇。
責編AJX

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據庫
    +關注

    關注

    7

    文章

    3846

    瀏覽量

    64685
  • 源代碼
    +關注

    關注

    96

    文章

    2946

    瀏覽量

    66955
  • MySQL
    +關注

    關注

    1

    文章

    829

    瀏覽量

    26743
收藏 人收藏

    評論

    相關推薦

    MySQL數據庫使用

    關于MySQL數據庫的簡單操作
    發表于 10-24 14:32

    labview插入數據MySQL數據庫

    最近在用labview寫入數據MySQL數據庫,遇到一個問題:(如圖片所示)利用insert指令插入數據,為什么每次
    發表于 12-26 16:52

    Mysql數據庫的基本操作

    Mysql數據庫入門-基本操作
    發表于 06-08 17:18

    數據庫插入查詢刪除操作教程

    數據庫插入查詢刪除操作教程
    發表于 12-07 09:57 ?2次下載

    LabVIEW操作MySQL數據庫編程實例

    LabVIEW操作MySQL數據庫編程實例
    發表于 10-13 15:05 ?49次下載

    華為云數據庫-RDS for MySQL數據庫

    華為云數據庫-RDS for MySQL數據庫 華為云數據庫作為華為云的一款數據庫產品,它主要是以MyS
    的頭像 發表于 10-27 11:06 ?1569次閱讀

    有哪些不同的MySQL數據庫引擎?

    數據庫引擎是MySQL組件,可以處理SQL操作,例如從數據庫創建、讀取和更新數據MySQL中有
    的頭像 發表于 04-03 16:38 ?1189次閱讀

    MySQL數據庫管理與應用

    討論MySQL數據庫的管理和應用。 管理MySQL數據庫 在管理MySQL數據庫之前,我們需要了
    的頭像 發表于 08-28 17:15 ?1026次閱讀

    mysql是一個什么類型的數據庫

    強、易于使用和管理。在本文中,我們將詳盡、詳實、細致地介紹MySQL的功能、優勢、架構、語法等方面。 一、MySQL的功能: 數據庫管理:MySQL具備創建和管理
    的頭像 發表于 11-16 14:43 ?1886次閱讀

    MySQL數據庫基礎知識

    的基礎知識,包括其架構、數據類型、表操作、查詢語句和數據導入導出等方面。 MySQL 數據庫架構 MyS
    的頭像 發表于 11-21 11:09 ?1016次閱讀

    mysql數據庫基礎命令

    MySQL是一個流行的關系型數據庫管理系統,經常用于存儲、管理和操作數據。在本文中,我們將詳細介紹MySQL的基礎命令,并提供與每個命令相關的詳細解釋。 登錄
    的頭像 發表于 12-06 10:56 ?645次閱讀

    數據庫數據恢復—未開啟binlog的Mysql數據庫數據恢復案例

    mysql數據庫數據恢復環境: 本地服務器,windows server操作系統 ,部署有mysql單實例,
    的頭像 發表于 12-08 14:18 ?1215次閱讀
    <b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復—未開啟binlog的<b class='flag-5'>Mysql</b><b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復案例

    數據庫數據恢復—MYSQL數據庫ibdata1文件損壞的數據恢復案例

    mysql數據庫故障: mysql數據庫文件ibdata1、MYI、MYD損壞。 故障表現:1、數據庫無法進行查詢等
    的頭像 發表于 12-09 11:05 ?222次閱讀

    數據庫數據恢復—Mysql數據庫表記錄丟失的數據恢復流程

    Mysql數據庫故障: Mysql數據庫表記錄丟失。 Mysql數據庫故障表現: 1、
    的頭像 發表于 12-16 11:05 ?223次閱讀
    <b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復—<b class='flag-5'>Mysql</b><b class='flag-5'>數據庫</b>表記錄丟失的<b class='flag-5'>數據</b>恢復流程

    MySQL數據庫的安裝

    MySQL數據庫的安裝 【一】各種數據庫的端口 MySQL :3306 Redis :6379 MongoDB :27017 Django :8000 flask :5000 【二】
    的頭像 發表于 01-14 11:25 ?131次閱讀
    <b class='flag-5'>MySQL</b><b class='flag-5'>數據庫</b>的安裝
    百家乐软件编辑原理| 东莞百家乐官网的玩法技巧和规则 | 百家乐官网代理占成| 金矿百家乐官网的玩法技巧和规则| 金龙娱乐城| 百家乐任你博赌场娱乐网规则| 百家乐官网游戏运营| 百家乐的弱点| 百家乐官网赢家打法| 大发888娱乐城官方下载安装| 康莱德百家乐官网的玩法技巧和规则 | 玩百家乐出千方法| 百家乐官网电话投注怎么玩| 大发888娱乐城备用| 24山六十日吉凶| 太阳城娱乐网站| 浠水县| 太阳百家乐网址| 百家乐官网怎么计算概率| 大发888大发8668| 机械手百家乐的玩法技巧和规则 | 兰溪市| 大发888娱乐场下载新澳博| 百家乐的规则博彩正网| 百家乐赢钱秘密| 百家乐官网奥| 百家乐官网游戏程序下载| 真龙娱乐| 全讯网最方便的新全讯网| 单耳房做生意的风水| 真人百家乐官网分析软件是骗局 | 威尼斯人娱乐场 五星| 百家乐筹码方| 德晋百家乐官网的玩法技巧和规则 | 大发888娱乐城开户| 百家乐佛牌| 24岁掉牙齿 风水| 百家乐使用技法| 百家乐大小点桌子| 在线百家乐策| 立博百家乐的玩法技巧和规则|