sql创建一个临时表,sql语句临时表

sql创建一个临时表,sql语句临时表,sql的临时表使用小结

本文主要介绍sql临时表的使用总结,有需要的朋友可以参考一下。

1、创建方法:

方法1:

创建表TempTableName

或者

选择[字段1,字段2,]到临时表名

方法二:

创建表tempdb。MyTempTable(Tid int)

描述:

(1)临时表实际上是数据库tempdb中的用户表;

(2)、TempTableName必须有“#”。“#”可以是一个或两个以#(本地)或# #(全局)开头的表。此类表在会话期间存在,并将在会话结束时自动删除;

(3)如果命名为tempdb。TempTable而不是#或# #创建时,该表可以一直存在,直到数据库重新启动。

2、手动删除

删除表TempTableName

描述:

DROP TABLE语句显式移除临时表,否则临时表将在退出其作用域时被系统自动移除:

(1)当存储过程完成时,在存储过程中创建的本地临时表将被自动删除。由创建该表的存储过程执行的所有嵌套存储过程都可以引用该表。但是调用创建该表的存储过程的进程不能引用该表;

(2)所有其他本地临时表在当前会话结束时被自动移除;

(3)当创建该表的会话结束并且其他任务停止引用它时,全局临时表被自动移除。仅在单个Transact-SQL语句的生存期内维护与任务表的关联。换句话说,当创建全局临时表的会话结束时,引用该表的最后一条Transact-SQL语句将自动删除该表。

3、示例代码

(1)创建

使用testdb

-创建本地临时表。

创建表#tmpStudent(Tid int,Name varchar(50),Age int)

插入到# tmp学生值(王晓,25)

select * from #tmpStudent

-创建本地临时表的另一种方法

select * into来自学生的#tmpStudent

select * from #tmpStudent

第二种创作方法:

创建Tempdb。我的Temptable(Tidint)-你只有拥有相应的权限才能写这个。

(2)删除

删除表#tmpStudent

关于sql中临时表的生命周期

1.本地临时表(以#开头)只对当前连接有效,当前连接断开时会自动删除。

2.全局临时表(以# #开头)对其他连接也有效,当当前连接和其他访问过它的连接断开时,会自动删除。

3.无论本地临时表还是全局临时表,只要连接有访问权限,就可以用drop table #Tmp(或drop table ##Tmp)显式删除。

sql创建一个临时表,sql语句临时表