- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Transact-SQL局部变量和全局变量
Transact-SQL中可以使用两种变量,一种是局部变量(Local?Variable)另外一种是全局变量(Global?Variable)。局部变量局部变量是用户可自定义的变量,它的作用范围仅在程序内部。在程序中通常用来储存从表中查询到的数据,或当作程序执行过程中暂存变量使用。局部变量必须以“@”开头,而且必须先用DECLARE命令说明后才可使用。其说明形式如下:DECLARE?@变量名?变量类型?[@变量名?变量类型…]其中变量类型可以是SQL?Server?2000支持的所有数据类型,也可以是用户自定义的数据类型。在Transact-SQL中不能像在一般的程序语言中一样使用“变量=变量值”来给变量赋值。必须使用SELECT或SET命令来设定变量的值,其语法如下:SELECT@局部变量=变量值SET?@局部变量=变量值例:声明一个长度为10?个字符的变量“id”并赋值declare@id?char(10)select@id=?
注意:可以在Select命令查询数据时,在Select命令中直接将列值赋给变量。例:查询为“”的和,将其分别赋予变量name和age。
例use?stuDB
declare?@name?varchar(8)?
declare?@age?int
select?@name=stuName,@age=stuAge?from?stuInfo?where?stuSeat=3
select?@name?as?姓名,@age?as?年龄运行结果如下:??????年龄
--------?-----------
????21
注意:数据库语言和编程语言有一些关键字,关键字是在某一一样下能够促使某一操作发生的字符组合,为避免冲突和产生错误,在命令表、列、变量以及其它对象时应避免使用关键字。全局变量全局变量是SQL?Server系统内部使用的变量,其作用范围并不局限于某一程序,而是任何程序均可随时调用全局变量通常存储一些SQL?Server的配置设定值和效能统计数据。用户可在程序中用全局变量来测试系统的设定值或Transact-SQL命令执行后的状态值。注意:全局变量不是由用户的程序定义的,它们是在服务器级定应义的。只能使用预先说明及定义的变局变量。引用全局变量时,必须以“@@”开头。局部变量的名称不能与全局变量的名称相同、否则会在应用中出错。select APP_NAME ( ) as w --当前会话的应用程序
select @@ERROR --返回最后执行的 Transact-SQL 语句的错误代码(integer)
select @@IDENTITY --返回最后插入的标识值
select USER_NAME() --返回用户数据库用户名
select @@CONNECTIONS --返回自上次SQL启动以来连接或试图连接的次数。
select GETDATE() --当前时间
select @@CPU_BUSY/100 --返回自上次启动SQL 以来 CPU 的工作时间,单位为毫秒
USE tempdb select @@DBTS as w --为当前数据库返回当前 timestamp 数据类型的值。这一 timestamp 值保证在数据库中是唯一的。
select @@IDLE as w --返回SQL自上次启动后闲置的时间,单位为毫秒
select @@IO_BUSY AS w --返回SQL自上次启动后用于执行输入和输出操作的时间,单位为毫秒
select @@LANGID AS w --返回当前所使用语言的本地语言标识符(ID)。
select @@LANGUAGE AS w --返回当前使用的语言名
select @@LOCK_TIMEOUT as w --当前会话的当前锁超时设置,单位为毫秒。
select @@MAX_CONNECTIONS as w --返回SQL上允许的同时用户连接的最大数。返回的数不必为当前配置的数值
EXEC sp_configure --显示当前服务器的全局配置设置
select @@MAX_PRECISION as w --返回 decimal 和 numeric 数据类型所用的精度级别,即该服务器中当前设置的精度。默认最大精度38。
select @@OPTIONS as w --返回当前 SET 选项的信息。
select @@PACK_RECEIVED as w --返回SQL自启动后从网络上读取的输入数据包数目。
select @@PACK_SENT as
文档评论(0)