sqlserver数据库插入数据

//插入一行数据
INSERT [INTO] 表名 [(列名)] VALUES (值列表)
注意事项:
(1)每次插入一行数据,不能只插入半行或者几列数据 插入的数据是否有效将按照整行的完整性的要求来检验
(2)每个数据值的数据类型、精度和小数位数必须与相应的列匹配
(3)不能为标识列指定值
(4)如果在设计表的时候就指定了某列不允许为空,则必须插入数据
(5)插入的数据项,要求符合检查约束的要求
(6)具有缺省值的列,可以使用DEFAULT(缺省)关键字来代替插入的数值
源代码:
INSERT INTO Student (StudentNo,LoginPwd,StudentName,Sex,GradeId,Phone,Address,BornDate)
VALUES ('S1200902005',DEFAULT,'张峰', '男',1,'13212345678',DEFAULT, '1987-6-2')


//插入多行数据
(1)第一种方法 通过INSERT SELECT语句将现有表中的数据添加到已存在的表中
INSERT INTO <表名>(列名) SELECT <列名> FROM <源表名> (方:目标表必须已经存在,才能向其插入数据)
源代码:
INSERT INTO AddressList (姓名,地址,电子邮件) SELECT SName,SAddress,SEmail FROM Students

(2)第二种方法 通过SELECT INTO语句将现有表中的数据添加到新表中
SELECT (列名) INTO <表名> FROM <源表名> (方:目标表不一定存在,若不存在,将会新建后,再插入数据)
源代码:
SELECT Students.SName,Students.SAddress,Students.SEmail INTO AddressList FROM Students

(3)第三种方法 通过UNION关键字合并数据进行插入
INSERT INTO <表名>(列名) SELECT <列名> UNION SELECT <列名> UNION 。。。(方:目标表必须已经存在,才能向其插入数据)
源代码:
INSERT STUDENTS (SName,SGrade,SSex)
SELECT '张可',7,1 UNION
SELECT '李扬',4,0 UNION
SELECT '杨晓',2,0 UNION
SELECT '汤美',3,0

posted @ 2018-01-16 17:55  wangzhaofang  阅读(8218)  评论(0编辑  收藏  举报