mysql的几种插入语句_Mysql 几种常见的插入 Insert into,Replace Into,Insert ignore
簡要說下三者的區別:insert into 最普遍的插入,如果表中存在主鍵相同的數據,執行會報錯。
replace into 如果表中存在主鍵相同的數據則根據主鍵修改當前主鍵的數據,反之則插入(存在就修改,反之插入)
insert ignore??如果表中存在主鍵相同的數據不在插入該條數據,反之則插入(存在則忽略,反之插入)
測試:
1.新增一張測試表 并預置數據
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執行效果
(1)執行語句(該語句的ID與預置數據的ID相同):
REPLACE INTO `insert_text` (`id`, `value`, `memo`) VALUES ('1', 'replace', 'replace');
執行結果:
(注意:這里返回的受影響行數為2,所以在統計插入數據成功的條數需注意下)
(2)執行語句(該語句的ID與預置數據的ID不同):
REPLACE INTO `insert_text` (`id`, `value`, `memo`) VALUES ('2', 'replace', 'replace');
執行結果:
在這里因為主鍵不同,可以理解為執行了insert into
3.檢測insert ignore執行效果:
(1)執行語句(該語句的ID與預置數據的ID相同):
INSERT IGNORE `insert_text` (`id`, `value`, `memo`) VALUES ('1', 'ignore', 'ignore');
數據未發生改變
(2)執行語句(該語句的ID與預置數據的ID不同):
INSERT IGNORE `insert_text` (`id`, `value`, `memo`) VALUES ('2', 'ignore', 'ignore');
在這里因為主鍵不同,可以理解為執行了insert into
好了,測試完成,需要根據不同的場景選擇對應的插入方式----------------fillt
總結
以上是生活随笔為你收集整理的mysql的几种插入语句_Mysql 几种常见的插入 Insert into,Replace Into,Insert ignore的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c# 睡眠3秒_C#中的闭包和意想不到的
- 下一篇: mysql 事物封装_mysqls 一个