色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql插入查詢內(nèi)容,有哪些方法可以避免重復(fù)的插入數(shù)據(jù)

mysql插入查詢內(nèi)容,有哪些方法可以避免重復(fù)的插入數(shù)據(jù)?

簡(jiǎn)要說下三者的區(qū)別:

insert into 最普遍的插入,如果表中存在主鍵相同的數(shù)據(jù),執(zhí)行會(huì)報(bào)錯(cuò)。

replace into 如果表中存在主鍵相同的數(shù)據(jù)則根據(jù)主鍵修改當(dāng)前主鍵的數(shù)據(jù),反之則插入(存在就刪除然后插入,反之直接插入)

insert ignore 如果表中存在主鍵相同的數(shù)據(jù)不在插入該條數(shù)據(jù),反之則插入(存在則忽略,反之插入)

測(cè)試:

1.新增一張測(cè)試表 并預(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.檢測(cè)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.檢測(cè)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

好了,測(cè)試完成,需要根據(jù)不同的場(chǎng)景選擇對(duì)應(yīng)的插入方式----------------fillt