/*
插入数据记录
insert into table_name
[(column1,column2,...columnN)]
values(value1,value2,..valueN)
table_name:插入数据记录的表的名称
column1,column2,...,columnN:表示要插入数据的列,多列之间用逗号
隔开.该项内容可以省略,如果省略表示向数据表中插入整行数据
value1,value2,..,valueN:表示插入的数据记录的值
注意原则:
-- 插入数据类型,与定义数据类型相同
-- 插入必须遵循数据表定义的数据完整性约束
-- 具有默认值或允许空值的列
-- values中,数据排列的先后位置必须与字段排列的先后位置一致,个数要相同
*/
go
create table students(
sno varchar(10) primary key,
sn varchar(10),
sex char(2),
bianma varchar(10)
)
go
-- 向students表中添加一行记录
insert into students
values('010101','张无忌','男','0101010101')
-- 向student表中sno,sname添加一行新记录
insert into students(sno,sn)
values('020202','杨晓')
-- 向student添加一条新记录,使ssfzh为null
go
insert into student(ssno,sname,ssfzh)
values('030303','赵敏',null)
go
select *
from student
-- 向student表中插入一条默认值记录
insert into student
default values -- 像主键还有其他的,都是不允许null的
-- 插入多条记录
insert into students(sno,sn,sex,bianma)
values('020103','李红','女','25'),
('020104','李阳','男','26'),
('020105','刘工','男','25')
/*
利用insert select 语句插入多行记录
可以利用该语句把现有表中多条数据添加到其他表中
语法
insert into table_name1(column1,column2,...,columnN)
select column1,column2,...,columnN
from table_name2
where condition
table_name1:指定要输入数据记录的数据表的名称
column1,column2,...columnN:插入到数据表中数据字段的名称
select column1,column2,...columnN:数据来源字段
table_name2:数据来源表
condition:条件表达式
*/
-- students表中的sno,sname,ssex添加到student
insert into student
select *
from students
10.插入语句
本文详细介绍了SQL中的数据插入操作,包括向单表和多表插入数据,使用默认值以及利用INSERT INTO SELECT语句进行批量插入。示例中展示了创建students表并添加不同类型的记录,强调了数据完整性约束和字段对应的重要性。同时,还讨论了如何通过SELECT语句从一个表向另一个表插入数据。
摘要由CSDN通过智能技术生成