主题
INSERT 用法
1. 插入单条记录
向表中插入一条新记录:
sql
INSERT INTO table_name (column1, column2) VALUES (value1, value2);
示例:
sql
INSERT INTO users (username, email) VALUES ('alice', '[email protected]');
2. 插入多条记录
一次插入多条数据,减少数据库交互:
sql
INSERT INTO users (username, email) VALUES
('bob', '[email protected]'),
('carol', '[email protected]');
3. 使用 SELECT 插入数据
从另一个表查询结果插入目标表:
sql
INSERT INTO archive_users (id, username, email)
SELECT id, username, email FROM users WHERE status = 'inactive';
4. 忽略重复记录插入
避免因主键或唯一索引冲突导致错误:
- 使用
INSERT IGNORE
忽略冲突行:
sql
INSERT IGNORE INTO users (id, username) VALUES (1, 'alice');
- 使用
ON DUPLICATE KEY UPDATE
实现冲突时更新:
sql
INSERT INTO users (id, username)
VALUES (1, 'alice')
ON DUPLICATE KEY UPDATE username = VALUES(username);
INSERT 是向数据库添加数据的核心操作,灵活运用多种插入方式提升效率。