《SQL sever数据库 第二章 Transact-SQL语法》由会员分享,可在线阅读,更多相关《SQL sever数据库 第二章 Transact-SQL语法(46页珍藏版)》请在金锄头文库上搜索。
1、第二章 Transact-SQL语法,Transact-SQL语言概述SQL语句使用说明SQL的数据类型变量定义运算符SQL Server常用函数流程控制语句与高级语言区别掌握内容,Transact-SQL语言概述,SQL发展20世纪70年代,IBM公司开始开发可以用于实现关系模型的语言和数据库系统;1975年在IBM公司的System R上首次实现。原型称为SEQUEL(Structured English Query Language)SQL-86是第一个SQL标准;SQL-89、SQL-92(SQL2)、SQL-99(SQL3);SQL是数据子语言,缺乏其它语言具有的许多基本编程能力,必
2、须与应用语言共同使用才能提供访问数据库的方法。使用SQL 查询数据库时,只需要告诉它做什么而不用告诉它如何去做。结构化语言与面向过程和面向对象语言区别人性化,符合人们的思维方式,容易理解和掌握,Transact-SQL语言概述,数据定义语言DDL data definition language 用于创建、修改或删除数据库对象Create,Alter,Drop;数据控制语言DCL data control language 可以控制访问数据库中特定对象的用户,通过Grant或Revoke语句授权或限制访问。数据操纵语言DML data manipulation language用于观察、添加、
3、修改或删除存储在数据库中对象的数据。Select,Insert,Update,Delete,SQL语句使用说明,每条SQL语句以分号结束;每条SQL语句可以单独写成一行,也可以分成若干行;SQL语句对大小写不敏感,对于SQL语句的关键字、表名、列名等,可以大小写混合;SQL Server用三段式名字标识对象:.,前两者可以省略,数据库的默认值是当前数据库,所有者名的默认值是数据库的所有者dbo。 如: pubs.dbo.authors,SQL语句使用说明,注释注释是程序代码中不执行的文本字符串(也称为注解)。在SQL Server中,可以使用两种类型的注释字符:一种是ANSI标准的注释符“-”
4、,它用于单行注释;另一种是与C语言相同的程序注释符号,即“/* */”。语句表示:CREATE GLOBAL|LOCAL TEMPORARY TABLE ( ,) ON COMMIT PRESERVE | DELETE ROWS ,SQL的数据类型,如果该列存储的数据长度相同,应该用char(n),否则用varchar(n);如果长度差别不大,希望提高查询效率,可以使用char(n)需要存储中文字符时,最好使用nchar(n)和nvarchar(n)(示例),SQL的数据类型,在选择整型数时,默认情况下使用int;如果确认要存储的数据很大或很小,可以考虑使用其它类型如果提供的数据超过其允许的取
5、值范围,将将发生数据溢出错误。(示例),SQL的数据类型,在 = 和 运算符,应避免使用 float 或 real参与科学计算的数据可以float 或 real Decimai和numeric相同,0 = s = p 、=、!=、!、! y print x y ; -打印字符串x y else if y z print y z; else print z y ;,流程控制语句,BEGINENDBEGINEND语句能够将多个SQL语句组合成一个语句块,并将它们视为一个单元处理。在条件语句和循环等控制流程语句中,当要执行的语句超过一个时,就需要使用BEGINEND语句。语法:BEGINsql_st
6、atement | statement_block END,流程控制语句,BEGINEND语句示例declare SCORE FLOAT;if(select avg(成绩) from 学生信息)70begin print 平均分小于70 ; select score=min(成绩) from 学生信息;end;else select score=max(成绩) from 学生信息;print score;,流程控制语句,CASE CASE函数可以计算多个条件式,并将其中一个符合条件的结果表达式返回。语法:CASE input_expression WHEN when_expression THEN result_expression .n ELSE else_result_expression END,