mysql的几种插入语句_Mysql 几种常见的插入 Insert into,Replace Into,Insert ignore
簡要說下三者的區(qū)別:insert into 最普遍的插入,如果表中存在主鍵相同的數(shù)據(jù),執(zhí)行會報(bào)錯。
replace into 如果表中存在主鍵相同的數(shù)據(jù)則根據(jù)主鍵修改當(dāng)前主鍵的數(shù)據(jù),反之則插入(存在就修改,反之插入)
insert ignore??如果表中存在主鍵相同的數(shù)據(jù)不在插入該條數(shù)據(jù),反之則插入(存在則忽略,反之插入)
測試:
1.新增一張測試表 并預(yù)置數(shù)據(jù)
CREATE TABLE`insert_text` (
`id`varchar(50) NOT NULL,
`value`varchar(50) DEFAULT NULL,
`memo`varchar(50) DEFAULT NULL,PRIMARY KEY(`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;INSERT INTO `insert_text` (`id`, `value`, `memo`) VALUES ("1", "2", "3");
2.檢測replace into執(zhí)行效果
(1)執(zhí)行語句(該語句的ID與預(yù)置數(shù)據(jù)的ID相同):
REPLACE INTO `insert_text` (`id`, `value`, `memo`) VALUES ('1', 'replace', 'replace');
執(zhí)行結(jié)果:
(注意:這里返回的受影響行數(shù)為2,所以在統(tǒng)計(jì)插入數(shù)據(jù)成功的條數(shù)需注意下)
(2)執(zhí)行語句(該語句的ID與預(yù)置數(shù)據(jù)的ID不同):
REPLACE INTO `insert_text` (`id`, `value`, `memo`) VALUES ('2', 'replace', 'replace');
執(zhí)行結(jié)果:
在這里因?yàn)橹麈I不同,可以理解為執(zhí)行了insert into
3.檢測insert ignore執(zhí)行效果:
(1)執(zhí)行語句(該語句的ID與預(yù)置數(shù)據(jù)的ID相同):
INSERT IGNORE `insert_text` (`id`, `value`, `memo`) VALUES ('1', 'ignore', 'ignore');
數(shù)據(jù)未發(fā)生改變
(2)執(zhí)行語句(該語句的ID與預(yù)置數(shù)據(jù)的ID不同):
INSERT IGNORE `insert_text` (`id`, `value`, `memo`) VALUES ('2', 'ignore', 'ignore');
在這里因?yàn)橹麈I不同,可以理解為執(zhí)行了insert into
好了,測試完成,需要根據(jù)不同的場景選擇對應(yīng)的插入方式----------------fillt
總結(jié)
以上是生活随笔為你收集整理的mysql的几种插入语句_Mysql 几种常见的插入 Insert into,Replace Into,Insert ignore的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c# 睡眠3秒_C#中的闭包和意想不到的
- 下一篇: linux cmake编译源码,linu