澳门金沙vipSql Server临时表和游标的使用小结_MsSql_脚本之家

1.存款和储蓄进度的分类

1.临时表

  • 系统存款和储蓄进程
  • 本地存款和储蓄进程(顾客自定义)
  • 不常存款和储蓄进程(局地【#】、全局【##】有时存储进程)

一时表与永恒表近似,但临时表存款和储蓄在 tempdb 中,当不再选拔时会自动删除。
不经常表有朝气蓬勃部分和大局二种档案的次序

2.创制存储进度

2者比较:

--选出价格区间的商品信息
create procedure sp_goods_price
@minprice float ,@maxprice float
as 
select * from goods 
where price>=@minprice and price <=@maxprice
go

一些有的时候表的称谓以符号 打头 仅对近期的顾客连接是可以知道的
当客户实例断开连接时被活动删除 全局有的时候表的名目以符号 打头
任何顾客都以可以预知的 当全数引用该表的客户断开连接时被电动删除
实际上部分一时表在tempdb中是有独一名称的
譬如大家用sa登入贰个询问分析器,再用sa登录另生机勃勃查询剖析器

 

在2个查询深入分析器大家都同意上面的话语:

试行存款和储蓄过程: execute sp_goods_price 200 2000

use pubsgoselect * into #tem from jobs

3.改换存款和储蓄进度

分级为2个顾客成立了2个部分不常表大家得以从上边的查询语句能够看看

create procedure sp_goods_betw
@minprice float =200,@maxprice float=3000
as 
select * from goods 
where price>=@minprice and price <=@maxprice
go
SELECT * FROM [tempdb].[dbo].[sysobjects] where xtype='u' 

if object_id is not null begin print 'exists' end else begin print 'not exists' end 

 

专程提示:1。在动态sql语句中创制的局地有的时候表,在语句运转完成后就自动删除了为此上边的口舌是得不到结果集的

4.剔除存款和储蓄进度

exec('select * into #tems from jobs')select * from #tems
drop procedure sp_goods_price

2。在蕴藏进程中用到的有时表在经过运营达成后会自动删除但是推荐显式删除,那样便于系统

 5.查看存款和储蓄进程

ii。游标 游标也是有局地和全局三种等级次序局部游标:只在证明阶段接收全局游标:能够在宣称它们的历程,触发器外界使用

sp_helptext procedureName
sp_help procedureName
if CURSOR_STATUS =-3 and CURSOR_STATUS =-3 begin print 'not exists' endSELECT * FROM [tempdb].[dbo].[sysobjects] where xtype='u' 

if object_id is not null begin print 'exists' end else begin print 'not exists' end 

 6.重命名存款和储蓄进度

特意提示:1。在动态sql语句中创立的局地有时表,在语句运维完成后就自动删除了所以下边包车型大巴说话是得不到结果集的