SQL练习35:批量插入数据,不使用replace操作
题目描述
- 题目描述
- 考察知识点
- 解题思路
题目已经先执行了如下语句:
drop table if exists actor;
CREATE TABLE actor (
actor_id smallint(5) NOT NULL PRIMARY KEY,
first_name varchar(45) NOT NULL,
last_name varchar(45) NOT NULL,
last_update DATETIME NOT NULL);
insert into actor values ('3', 'WD', 'GUINESS', '2006-02-15 12:34:33');
对于表 actor
插入如下数据,如果数据已经存在,请忽略(不支持使用 replace
操作)
INSERT IGNORE
Mysql
中插入数据的三种方式:
1️⃣ INSERT INTO
:插入数据时会检查主键,如果出现重复会报错。
INSERT INTO actor VALUES('3', 'WD', 'GUINESS', '2006-02-15:24:34:33')
2️⃣ REPLACE INTO
:插入替换数据,如果该条数据已经存在,则用新数据替换;如果不存在则直接插入。
REPLACE INTO actor VALUES('3', 'WD', 'GUINESS', '2006-02-15:24:34:33')
3️⃣ INSERT IGNORE
:如果中已经存在相同的记录,则忽略当前新数据;
题目出得很迷~,看半天发现就是考察 INSERT IGNORE
的用法。
INSERT IGNORE INTO actor VALUES('3', 'WD', 'GUINESS', '2006-02-15:24:34:33')
题目来源:牛客网-SQL数据库实战题
✅ 每日打卡,❤ 点个赞再走吧!!!❤ 后续会继续分享 Mysql 方面的文章,如果感兴趣的话可以点个关注不迷路哦~。