资源描述:
《第3章 T-SQL语言简介》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第三章T-SQL语言简介本章目标如何理解T-SQL数据类型掌握如何定义变量并赋值掌握如何输出显示数据理解SQL中注释与批处理的概念T-SQL与SQL的区别MSSQLServer2005中使用的SQL称为Transact–SQL简称T-SQL,它是微软在标准SQL语言基础上创建的符合SQLServer特点的数据库访问语言,一直以来都是SQLSERVER的开发、管理工具。SQLServer2005版本提供了很多增强功能,包括错误处理,递归查询,对SQLServer数据库引擎功能的支持等。包含了标准SQL的全部功能。T-SQL命令行语法检查执行选择数据库数据库对象执行结果T-
2、SQL之前…T-SQL数据类型分类备注和说明数据类型说明二进制数据类型存储非子符和文本的数据Image可用来存储图像文本数据类型字符数据包括任意字母、符号或数字字符的组合Char固定长度的非Unicode字符数据Varchar可变长度非Unicode数据Nchar固定长度的Unicode数据Nvarchar可变长度Unicode数据Text存储长文本信息Ntext存储可变长度的长文本日期和时间日期和时间在单引号内输入Datetime日期和时间数字数据该数据仅包含数字,包括正数、负数以及分数intsmallint整数floatreal数字货币数据类型用于十进制货币值Mon
3、eyBit数据类型表示是/否的数据Bit存储布尔数据类型T-SQL中的常量、变量、批处理、注释和输出语句常量常量是指使用字符或数字表示出来的字符串、数值或日期等数据类型,表示一个特定的数据值的符号。例如:select'abcdABCD'字符串常量,N’abcde’unicode字符串常量,0x12345二进制常量,-120整型常量,123.45精确值常量,12.345E+6近似值常量,$12货币型常量,convert(datetime,'2007-7-16')日期时间常量常量常量和C语言一样,变量分为:局部变量:局部变量必须以标记@作为前缀,如@age局部变量的使用也是
4、先声明,再赋值全局变量:全局变量必须以标记@@作为前缀,如@@version全局变量由系统定义和维护,我们只能读取,不能修改全局变量的值局部变量局部变量局部变量的作用范围只在T-SQL批处理语句,触发器,存储过程中起作用。1局部变量的声明语法declare@<局部变量名1>,<类型及宽度>,@<局部变量名2>,<类型及宽度>,…2局部变量的赋值set@局部变量=表达式例如:declare@stud_id,varchar(8),@course_idvarchar(4)set@stud_id=’31031002’,@course_id=’3002’select@stud_i
5、d学号,@course_id课程号声明局部变量DECLARE@变量名数据类型局部变量赋值SET@变量名=表达式SELECT@变量名1=表达式1[…n]from〈数据源〉例如:declare@var1datetime,@var2smalldatetimeset@var1='2007/7/164:20:25.100PM'set@var2='2007/7/164:20:25AM'select'@var1'=@var1,'@var2'=@var2局部变量例如:usestudentdeclare@stud_idvarchar(12),@course_idarchar(5),@sc
6、oreintselect@stud_id='31022002'select@course_id='30002'select@stud_id=stud_id,@course_id=course_id,@score=scorefromtblscorewherestud_id=@stud_idandcourse_id=@course_idselect@stud_id学号,@course_id课程号,@score成绩局部变量注意:列名可以使用别名,必须是字符串,否则要加单引号,其格式有五种:Stud-name姓名姓名=Stud-nameStud-nameas姓名Stud-nam
7、eas‘姓名’Stud-name‘姓名’全局变量在整个SQLSERVER实例范围内,特定会话期间(从数据库实例连接到断开的期间)内起作用的变量称为全局变量。全局变量在整个SQLSERVER系统内使用。存储的通常是一些SQLSERVER的配置设定值和统计数据。使用全局变量是应注意以下几点:1全局变量是在服务器级别定义的。2用户只能使用预先定义的全局变量。3引用全局变量时,必须以标记符@@开头。4全局变量对用户来说是只读的。局部变量的名称不能与全局变量的名称相同。全局变量都使用两个@标志作为前缀变量含义@@ERROR最后一个T-SQL错误的错