新SQL Server数据库原理及应用 第二版 教学课件 曾长军 第 6 章 Transact SQL.pptVIP

  • 2
  • 0
  • 约 119页
  • 2016-10-26 发布于广东
  • 举报

新SQL Server数据库原理及应用 第二版 教学课件 曾长军 第 6 章 Transact SQL.ppt

第 6 章 Transact-SQL 6.1 常 量 6.1.1 关于SQL标识符 用户定义SQL标识符时必须遵循以下规则。 ① 标识符的长度为1~128个字符。在SQL Server 7.0之前的版本则限制在30个字符内。 ② 可以使用的字符包括字母、数字、#、$、@和下划线“_”。 ③ 标识符的第一个字符必须是字母、下划线“_”、@和#。当标识符以@和#开始时具有特殊的含义。 ④ 一般标识符不能包含空格,也不能使用SQL的关键字。 ⑤ 中文版的SQL Server可以使用汉字作为标识符。 ⑥ 如果不能遵守上述规则中的一条,那么标识符便看成是一个分隔标识符放在双引号()或中括号([])里面,而且此时QUOTED_IDENTIFIER被设置为ON才可以。 SQL标识符通常用来表示服务器名、数据库名、表名、常量、变量和其他数据库对象名,比如视图、函数和存储过程等。 用户可以借助存储过程sp_validname来检验标识符是否有效。 6.1.2 常量 常量指在程序运行过程中值不变的量。根据常量值的不同类型,分为字符串常量、整型常量、实型常量、日期时间常量、货币常量和惟一标识常量。 1.字符串常量 字符串常量分为ASCII常量和Unicode常量。 ASCII常量用单引号括起来,由ASCII字符构成。 Unicode常量前面有一个N(必须是大写的) 。 2.整型常量 按照整型常量的不同表示形式,可以分为二进制型、十进制型和十六进制型。 ① 二进制型:由数字1和0构成。 ② 十进制型:即常见的十进制数,如2004,?98765。 ③ 十六进制型:以前缀0x开头的十六进制数字串,如0xff12。 3.实型常量 实型常量有定点表示和浮点表示两种方式。 ① 定点表示:如895.04,3.0,?34219.01。 ② 浮点表示:即采用科学计数法,如10.3E9,?12E2。 4.日期时间型常量 日期时间型常量要用单引号括起来。 5.货币型常量 货币型常量实际上是以“$”作为前缀的整型或实型数据。 6.uniqueidentifier常量 uniqueidentifier常量可以使用字符或十六进制字符串指定。 6.2 变 量 ① 遵循“先定义再使用”的原则; ② 定义一个变量包括用合法的标识符作为变量名和指定变量的数据类型; ③ 建议给变量取名时能代表变量用途的标识符,比如统计总和可用total作为变量名。 在SQL Server中变量分为全局变量和局部变量。 6.2.1 全局变量 全局变量以@@作为前缀。 1.@@rowcount 记录前一条SQL Server语句处理的记录的行数。 2.@@error 每条Transact-SQL语句执行后,服务器会赋值给这个变量一个整型值:0,表示Transact-SQL语句执行过程没有错误,否则就表示语句执行失败。 6.2.2 局部变量 局部变量一般用在批处理、存储过程和触发器中。 1.局部变量的声明 语法: DECLARE @变量名 数据类型[,…] 参数说明: ① DECLARE关键字用于声明局部变量。 ② 局部变量名前面必须加上字符“@”用于表明该变量名是局部变量。 ③ 同时声明几个变量时彼此间需要用“,”分隔。 2.局部变量的赋值 可以借助以下几种方法给局部变量赋值。 通过SET来赋值 语法: SET @变量名=表达式 参数说明: ① 局部变量没有赋值时其值是NULL。 ② 不能在一个SET语句中同时对几个变量赋值,如果要想借助SET给几个变量赋值,那么就不得不分开来写。 DECLARE @NUM INT,@CNUM CHAR(10) SET @NUM=2004 SET @CNUM=2004 PRINT @NUM PRINT @CNUM 通过SELECT赋值 语法: SELECT @变量名=表达式[,…] [FROM 表名][WHERE 条件表达式] 参数说明: ① 用SELECT赋值时如果省略了FROM子句等同于上面的SET方法。不省略时,那么就将查询到的记录的数据赋给局部变量,如果返回了多行记录,那么就将最后一行记录的数据赋给局部变量。所以尽量限制WHERE的条件,使得只有一条记录返回。 ② SELECT可以同时给几个变量赋值。 6.3 数 据 类 型 6.3.1 系统数据类型 系统数据类型指SQL Server系统提供的数据类型。 6.3.2

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档