首页 > 代码库 > SQL学习系列(二)之临时表的使用

SQL学习系列(二)之临时表的使用

  1.关于使用临时表说明:

  (1).临时表其实是放在数据库tempdb里的一个用户表。

  (2).TempTableName必须带“#”,“#"可以是一个或者两个,以#(局部)或##(全局)开头的表,这种表在会话期间存在,会话结束则自动删除。

  (3).如果创建时不以#或##开头,而用tempdb.TempTable来命名它,则该表可在数据库重启前一直存在。

  2.删除临时表

  drop table  TempTableName

  (1).当存储过程完成时,将自动除去在存储过程中创建的本地临时表。由创建表的存储过程执行的所有嵌套存储过程都可以引用此表。但调用创建此表的存储过程的进程无法引用此表。
  (2).所有其它本地临时表在当前会话结束时自动除去。
  (3).全局临时表在创建此表的会话结束且其它任务停止对其引用时自动除去。任务与表之间的关联只在单个Transact-SQL语句的生存周期内保持。换言之,当创建全局临时表的会话结束时,最后一条引用此表的Transact-SQL语句完成后,将自动除去此表。

  3.使用代码

技术分享
--删除临时表drop table #Student--创建临时表create table #Student(name nvarchar(50) not null,age int)--查询select * from #Student--添加insert into #Student values(张三,18)--删除delete #Student where name=张三--修改update #Student set age=20 where name=张三
View Code

 

SQL学习系列(二)之临时表的使用