Transact-SQL是ANSI SQL的扩充版语言,它继承了ANSI SQL的命令和功能外,还对其进行了许多扩充。它提供了类似C等程序设计语言的基本功能,如变量说明,功能函数,程序流程控制语言等。
一、 Transact-SQL语言的分类
1、变量声明: 局部变量 和 全局变量;
2、数据定义语言DDL (Data Definition Language):用来建立数据库及数据库对象,
大部分以CREAT开头 (如CREAT TABLE等);
3、数据控制语言DCL (Data Control Language):用来控制数据库组件的存取许可,
权限等命令, (如GRANT,REVOKE等);
4、数据操纵语言DML (Data manipulation language):用来操纵数据库中的数据的命
令 (如SELECT,UPDATE等);
5、流程控制语言 FCL (Flow Control Language):用于控制应用程序流程的语句,
(如IF,CASE等)。
二、Transact-SQL语言的基本对象
1、注释
1> 双连字符注释(--);
如:USE pubs --使用SQL Server 2000实例数据库pubs
2> 正斜杠—星号对注释(/* */); <注:不能跨越批处理>
如:SELECT * FROM discounts /*从表discounts中查询所有数据*/
2、标识符
1>常规标识符:指符合标识符的格式规则的标识符(规则取决于数据库兼容级别)
兼容级别为80时,常规标识符的规则如下:
·第一个字符必须是字母、at符号(@)、下划线(_)、或者数字符号(#)等字符
之一;
·第一个字符外的字符可以是字母、十进制数字、下划线(_)、at符号(@)或者
数字符号(#);
·标识符中不允许嵌入空格或者其他特殊符号;
·标识符不能为保留字。
2>分隔标识符:指不符合标识符的格式规则,包含在双引号(“)或者方括号内
([ ])的标识符;
例1:
USE pubs
SELECT * FROM titles --titles是常规标识符
SELECT * FROM [employee info] --employee info不符合标识符规则所以要括起来
WHER [GET]=‘dzhcheng‘ --GET是保留字,所以要括起来
3、变量
1>全局变量:SQL Server 2000内部使用的变量,任何程序均可以随时调用。
2>局部变量:用户自己定义的变量,作用域仅在程序内部,
作用:存取从表中查询到的数据,或者当作程序执行过程中临时存放变量使用,声明:局部变量必须以@开头且先用DECLARE命令声明后才可以使用
声明格式:DECLARE{{@local_variable data_type}{…}
Local_variable为变量名
Data-type为变量类型(SQL Server 2000提供的所有数据类型、自定义类型)
设定变量值:使用SELECT或SET命令来设定变量值
设定语法:SELECT @local_variable = variable
SET @local_variable = variable
Local_variable为变量名
Variable为变量值
例2:打开查询分析器窗口,在文本窗口输入如下SQL语句
USE pubs
DECLARE @searchvar varchar(20) --声明长度为20字符的变量searchvar
SET @searchvar = ‘ringer’ --给变量符值
SELECT au_lname,au_fname,phone
FROM authors
WHERE au_lname = @searchvar --使用变量
这篇博客介绍了Transact-SQL,它是ANSI SQL的扩充版,具备变量声明、DDL、DCL、DML和FCL等功能。文章详细讲解了Transact-SQL中的变量(全局与局部)、数据定义、数据控制、数据操纵和流程控制语言,并阐述了其基本对象,包括注释、标识符和变量的使用方法,提供实例进行说明。
915

被折叠的 条评论
为什么被折叠?



