[转] SQL Server中变量的声明和使用方法

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:

原文地址 SQL Server中变量的声明和使用方法

 

 

声明局部变量语法:

DECLARE @variable_name DataType

其中 variable_name为局部变量的名称,DataType为数据类型。

给局部变量赋值有两种方法:

1、SET @variable_name=value

2、SELECT @variable_name=value

两者的区别:SET赋值语句一般用于赋给变量一个指定的常量,SELECT赋值语句一般用于从表中查询出数据然后赋给变量。

例如:

DECLARE @count int

SET @count=123

PRINT @count

全局变量:

由于全局变量是系统定义的,我们这里只做举例。

@@ERROR 最后一个T-SQL错误的错误号

@@IDENTITY 最后一次插入的标识值

@@LANGUAGE 当前使用的语言名称

@@MAX_CONNECTIONS 可以创建的同时连接的最大数目

@@SERVERNAME 本地服务器的名称

@@VERSION SQL Server的版本信息

 

这里是触发器的写法:


create trigger updateTest on test for update
as
begin
declare @id int
declare @tablename varchar(100)
declare @remark varchar(150)
set @tablename='test'
set @remark=''
select @id=id from deleted
insert into tb_index values(@id,@tablename,@remark)
end

create trigger deleteTest on test for delete
as
begin
declare @id int
declare @tablename varchar(100)
declare @remark varchar(150)
set @tablename='test'
set @remark=''
select @id=id from deleted
insert into tb_index values(@id,@tablename,@remark)
end

create trigger insertTest on test for insert
as
begin
declare @id int
declare @tablename varchar(100)
declare @remark varchar(150)
set @tablename='test'
set @remark=''
select @id=id from inserted
insert into tb_index values(@id,@tablename,@remark)
end

没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。





    本文转自wenglabs博客园博客,原文链接:http://www.cnblogs.com/arxive/p/5707639.html ,如需转载请自行联系原作者
相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
存储 SQL
vc++中,用ado执行sql server存储过程,并且取得返回值的例子
vc++中,用ado执行sql server存储过程,并且取得返回值的例子
Server基本语句的用法
Server基本语句的用法1、创建数据库 create database databaseName user databaseName go / 转到指定数据库 / 2、创建表 create table tableName( /* 字段名 */ ) 3、插入数据 insert into ta...
918 0
|
SQL
SQL SERVER中LIKE使用变量类型不同输出结果不一致解惑
原文:SQL SERVER中LIKE使用变量类型不同输出结果不一致解惑 一同事在写脚本时,遇到一个关于LIKE里面使用不同的变量类型导致查询结果不一致的问题,因为这个问题被不同的人问过好几次,索性总结一下,免得每次都要解释一遍,直接丢一篇博客岂不是更方便!其实看似有点让人不解的现象背后实质跟数据类型的实现有关。
958 0
|
SQL 索引 测试技术
SQL SERVER中隐式转换的一些细节浅析
原文:SQL SERVER中隐式转换的一些细节浅析 其实这是一篇没有技术含量的文章,精通SQL优化的请绕道。这个缘起于在优化一个SQL过程中,同事问了我一个问题,为什么SQL中存在隐式转换,但是执行计划没有变? 我思索了一下,觉得这个问题也有点意思,说不定有些对隐式转换了解得不深入的同学都有此疑问,那么下面结合上下文场景做一个细节方面的解答。
1263 0