T-SQL(5)-操作数据行(芮)

 
插入数据行
INSERT  [INTO] <表名>  [列名] VALUES <值列表>
INSERT INTO Students (SName,SAddress,SGrade,SEmail,SSEX)
VALUES ('张青裁','上海松江',6,'ZQC@Sohu.com',0)
注意事项:
1: 每次插入一行数据,不可能只插入半行或者几列数据,因此,插入的数据是否有效将按照整行的完整性的要求来检验;
2: 每个数据值的数据类型、精度和小数位数必须与相应的列匹配;
3: 不能为标识列指定值,因为它的数字是自动增长的;
4: 如果在设计表的时候就指定了某列不允许为空,则必须插入数据;
5: 插入的数据项,要求符合检查约束的要求
6: 具有缺省值的列,可以使用DEFAULT(缺省)关键字来代替插入的数值
 
插入多行数据1
INSERT INTO <表名>(列名)
SELECT <列名>
FROM <源表名>
INSERT INTO        TongXunLu ('姓名','地址','电子邮件')
SELECT SName,SAddress,SEmail
FROM            Students
 
插入多行数据 2
SELECT (列名)
INTO <表名>
FROM <源表名>
SELECT Students.SName,Students.SAddress,Students.SEmail
INTO         TongXunLu
FROM     Students
问题是SELECT INTO插入多行数据的时候,如何插入新的标识列?
SELECT IDENTITY(数据类型,标识种子,标识增长量) AS 列名
INTO 新表
FROM 原始表
SELECT Students.SName,Students.SAddress,Students.SEmail,IDENTITY(int,1,1) As StudentID
INTO TongXunLuEX
FROM Students
 
插入多行数据 3
INSERT INTO <表名>(列名)
SELECT <列名> UNION
SELECT <列名> UNION
……
INSERT  STUDENTS (SName,SGrade,SSex)
SELECT '测试女生1',7,0 UNION
SELECT '测试女生2',7,0 UNION
SELECT '测试女生3',7,0 UNION
SELECT '测试女生4',7,0 UNION
SELECT '测试女生1',7,0 UNION
SELECT '测试男生2',7,1 UNION
SELECT '测试男生3',7,1 UNION
SELECT '测试男生4',7,1 UNION
SELECT '测试男生5',7,1
 
更新数据行
UPDATE <表名> SET <列名 = 更新值>
[WHERE <更新条件>]
UPDATE Scores
SET Scores = Scores + 5
WHERE Scores <= 95
 
删除数据行
DELETE FROM <表名> [WHERE <删除条件>]
或者:TRUNCATE TABLE <表名>
这里DELETE FROM Students=TRUNCATE TABLE Students
 
查询数据行
由于数据查询是最常见的操作数据行的方式,所以我们下面单独讨论。

 

posted @ 2014-11-13 16:34  博斯芮网络科技  阅读(121)  评论(0编辑  收藏  举报