您的位置:首页 > 数据库

SqlServer创建临时表

2012-05-07 00:32 120 查看
创建临时表

方法一:

create table #临时表名(字段1 约束条件,

字段2 约束条件,

.....)

create table ##临时表名(字段1 约束条件,

字段2 约束条件,

.....)

方法二:

select * into #临时表名 from 你的表;

select * into ##临时表名 from 你的表;

注:以上的#代表局部临时表,##代表全局临时表

临时表分为两类:本地临时表、全局临时表。

本地临时表仅在当前会话中可见;全局临时表在所有会话中都可见。

本地临时表的名称前面有一个编号符 (#table_name),而全局临时表的名称前面有两个编号符 (##table_name)。

除非使用 DROP TABLE 语句显式除去临时表,否则临时表将在退出其作用域时由系统自动除去。当存储过程完成时,将自动除去在存储过程中创建的本地临时表。由创建表的存储过程执行的所有嵌套存储过程都可以引用此表。但调用创建此表的存储过程的进程无法引用此表。

eg.

if exists(select [name] from sys.procedures

where [name]='proc_test' )

drop procedure proc_test

go

create proc proc_test

as

create table #t_test(id int primary key);

insert into #t_test values (10);

select x=id from #t_test;

调用:exec proc_test

结果:

x

----------------

10
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: