简略说下三者的差别: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");

Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第1张

2.检验replace into执行实际效果

(1)执行句子(该句子的ID与预设数据信息的ID同样):

REPLACE INTO `insert_text` (`id`, `value`, `memo`) VALUES ('1', 'replace', 'replace');

执行結果:

Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第2张

Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第3张

(留意:这儿回到的受影响个数为2,因此在统计分析插进数据信息取得成功的总数特别注意下)

(2)执行句子(该句子的ID与预设数据信息的ID不一样):

REPLACE INTO `insert_text` (`id`, `value`, `memo`) VALUES ('2', 'replace', 'replace');

执行結果:

Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第4张

Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第5张

在这儿由于主键不一样,能够 了解为执行了insert into

 

3.检验insert ignore执行实际效果:

(1)执行句子(该句子的ID与预设数据信息的ID同样):

INSERT IGNORE `insert_text` (`id`, `value`, `memo`) VALUES ('1', 'ignore', 'ignore');

Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第6张

  Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第7张

数据信息未发生改变

(2)执行句子(该句子的ID与预设数据信息的ID不一样):

INSERT IGNORE `insert_text` (`id`, `value`, `memo`) VALUES ('2', 'ignore', 'ignore');

Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第8张

Mysql 几种常见的插入 Insert into,Replace Int…  数据库  第9张

在这儿由于主键不一样,能够 了解为执行了insert into

 

好啦,检测进行,必须依据不一样的情景挑选相匹配的插入方式----------------fillt