在 SQL Server 中,INSERT INTO
语句用于向表中插入新记录。以下是 INSERT INTO
语句的基本语法和用法:
基本语法
- 插入一行数据
INSERT INTO table_name [ (column1, column2, column3, ...)]
VALUES (value1, value2, value3, ...);
- 插入多行数据
- 从另一张表格插入数据:
INSERT INTO t1 (col1, col2)
SELECT t2.col3, t2.col4
FROM t2
WHERE t2.col5 = xxx;
- 使用
UNION ALL
插入多条数据:
INSERT INTO t1 (col1, col2)
SELECT xxx1, yyy1
UNION ALL
SELECT xxx2, yyy2
UNION ALL
SELECT xxx3, yyy3;
示例
假设有一个 Students
表,包含 id
、name
和 age
字段,你可以这样插入数据:
- 插入一条完整数据:
INSERT INTO Students (id, name, age)
VALUES (1, '张三', 18);
- 插入部分数据,使用默认值:
INSERT INTO Students (id, name)
VALUES (2, '李四');
- 批量插入多条数据:
INSERT INTO Students (id, name, age)
VALUES (3, '王五', 19),
(4, '赵六', 20),
(5, '刘七', 21);
注意事项
-
如果表中的某个字段设置了
NOT NULL
约束,那么在插入数据时必须为该字段提供值。 -
可以显式插入默认值,如果某个字段的默认值已经定义的话。
-
INSERT INTO
语句可以与SELECT
语句结合使用,从另一个表中选择数据插入到当前表中。 -
INSERT INTO
语句也可以与存储过程结合使用,将存储过程返回的数据插入到表中。
以上就是 SQL Server 中 INSERT INTO
语句的基本用法。