在数据库的日常使用中,向表中新增数据是高频操作,而SQL的INSERT语句就是完成这项任务的核心工具。不管是刚入门的新手还是有一定经验的开发者,都需要熟练掌握INSERT的基础用法,才能顺畅完成数据写入的相关工作。

INSERT语句的基础语法
最基础的INSERT语句用来向表中插入一条完整的记录,要求值的顺序和表中列的定义顺序完全一致。假设我们有一张用户表user,包含id、username、age三个列,插入单条记录的语法如下:
-- 插入完整记录,值和列顺序一一对应 INSERT INTO user VALUES (1, '张三', 25);
这种写法要求必须给所有列都提供对应的值,如果表的列有默认值或者允许为空,也可以显式指定要插入的列,避免需要填写所有列的值:
-- 指定插入username和age列,id如果有自增属性可以不用填写
INSERT INTO user (username, age) VALUES ('李四', 22);插入多条记录的方法
如果需要一次性插入多条记录,不需要多次执行INSERT语句,只需要在VALUES后面跟上多组值即可,大幅提升插入效率:
-- 一次性插入三条用户记录
INSERT INTO user (username, age) VALUES
('王五', 28),
('赵六', 19),
('孙七', 30);注意事项
使用INSERT语句时需要注意几个常见的问题,避免出现插入失败的情况:
- 插入的值的类型必须和对应列的类型匹配,比如age列是数值类型,就不能插入字符串内容
- 如果列设置了非空约束且没有默认值,插入时必须给该列提供值
- 主键列的值不能重复,重复插入会导致语句执行失败
掌握以上这些INSERT语句的基础用法,就可以应对大部分日常的数据插入需求,后续更复杂的插入场景也可以在这些基础语法上扩展实现。