
《SQL Server 2005数据库案例教程》-严波-电子教案 第3章SQLSERVER数据管理.ppt
20页第三章,SQL Server数据管理,了解SQL和T-SQL 通过T-SQL增加数据 通过T-SQL删除数据 通过T-SQL修改数据 通过T-SQL查询数据,本章目标,SQL,SQL:Structured Query Language:结构化查询语言 SQL是关系型数据库管理系统的标准语言 SQL语句可以用来执行各种各样的操作,包括 创建数据库对象,数据的增加,删除,修改等操作,T-SQL,T-SQL = Transact-SQL T-SQL是SQL Server对标准SQL的扩展 T-SQL包含SQL的基本功能和指令 T-SQL包含了大量的数据操作函数和语法结构,T-SQL组成,DML(数据操作语言) ——查询、插入、删除和修改数据库中的数据; ——SELECT、INSERT、 UPDATE 、DELETE等; DCL(数据控制语言) ——用来控制存取许可、存取权限等; ——GRANT、REVOKE 等; DDL(数据定义语言) ——用来建立数据库、数据库对象和定义其列 ——CREATE TABLE 、DROP TABLE 等 变量说明、流程控制、功能函数 ——定义变量、判断、分支、循环结构等 ——日期函数、数学函数、字符函数、系统函数等,T-SQL中的运算符,示例,DECLARE @n int SET @n=100 SELECT -@n go DECLARE @var1 char(10) DECLARE @var2 char(10) SET @var1=’HELLO ’ SET @var2=’WORLD!’ SELECT @var1+@var2 go,通配符,逻辑表达式,数据类型,插入数据,语法: INSERT [INTO] 表名 [(列名,,,n)] VALUES (值,,,n) 示例:,INSERT INTO STUDENT VALUES ('S0000005','张宇', '1982-1-20 ', '南京','男'),插入数据,注意: 对于字符类型和日期类型的数据插入时用单引号将值引起来 插入的数据项必须符合字段的约束,否则系统报错 不能为标识列指定值,因为它的数字是自动增长的,注意事项,如果在设计表的时候就指定了某列不允许为空,则必须插入数据 具有缺省值的列,可以使用DEFAULT(缺省)关键字来代替插入的数值,INSERT INTO Student (Name, Address, Sex) VALUES (‘张小’,DEFAULT,’男’),插入多行数据,语法: INSERT [INTO] 表名[(列名)] SELECT (列名,,,n) FROM 表名 示例:,INSERT INTO StuTmp (StuNo,StuName,StuAddress) SELECT StuNo,StuName,StuAddress FROM Student,更新数据,语法: UPDATE 表名 SET [WHERE 更新条件] 示例1:给全班考试不及格的学生加10分,UPDATE StuScore SET Score=Score+10 WHERE Score60,更新数据,示例2:把学生S0000004的出生日期加1天,地址改为沈阳,UPDATE Student SET StuDate=StuDate+1, StuAddress='沈阳' WHERE StuNo='S0000004‘,删除数据,语法: DELETE FROM 表名 [WHERE 条件] 示例1:删除临时表StuTmp中的数据 示例2:删除考试不及格的成绩信息,DELETE FROM StuTmp,DELETE FROM Stu17Score WHERE StuScore60,清空表,语法: TRUNCATE TABLE 表名 示例:,TRUNCATE TABLE StuTmp,删除数据总结,DELETE删除数据时要写日志,而TRUNCATE不写,所以TRUNCATE删除数据不可恢复 删除整个表的数据TRUNCATE比使用DELETE速度要快 不能对由 FOREIGN KEY 约束引用的表使用TRUNCATE,总结,SQL是结果化的查询语言,是关系型数据库管理系统 的标准语言 增加单行数据用INSERT INTO ……VALUES 增加多行数据用INSERT INTO ……SELECT….FROM 删除数据用DELETE FROM WHERE… 快速删除整个表中的数据用TRUNCATE TABLE… 修改数据用UPDATE 表 SET 字段=表达式 WHERE….,。
