Sql Server临时表

转载 2012年03月23日 15:43:50
1.临时表

临时表与永久表相似,但临时表存储在 tempdb中,当不再使用时会自动删除。

 

临时表有局部和全局两种类型 

两者比较:

局部临时表的名称以符号 (#)打头

仅对当前的用户连接是可见的

当用户实例断开连接时被自动删除

 

全局临时表的名称以符号 (##)打头

任何用户都是可见的

当所有引用该表的用户断开连接时被自动删除

 

 

实际上局部临时表在tempdb中是有唯一名称的

例如我们用sa登陆一个查询分析器,再用sa登陆另一查询分析器

 

2个查询分析器我们都允许下面的语句:

use pubs

go

select * into #tem from jobs

分别为2个用户创建了2个局部临时表

我们可以从下面的查询语句可以看到

SELECT *FROM [tempdb].[dbo].[sysobjects]

where xtype='u'

判断临时表的存在性:

if OBJECT_ID('tempdb..#ttt') is not null
drop table #ttt


------------OR-----------------------------------------


if exists(select * from tempdb.dbo.sysobjects where id = object_id(N'tempdb..#tem) and type='U')
    print 'exists'
else
    print 'not exists'


特别提示:

1。在动态sql语句中创建的局部临时表,在语句运行完毕后就自动删除了

所以下面的语句是得不到结果集的

exec('select * into #tems from jobs')

select * from #tems

 

2。在存储过程中用到的临时表在过程运行完毕后会自动删除

但是推荐显式删除,这样有利于系统及时释放资源。

SQL SERVER临时表的使用

转载:http://www.cnblogs.com/shineqiujuan/archive/2008/11/13/1332657.html drop table #Tmp   --删除临时表#Tm...
  • ycl295644
  • ycl295644
  • 2015年04月27日 15:09
  • 3648

SQL临时表相关记录(WITH AS,#TMP)

一.WITH AS的含义      WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时...
  • zlhxiaohui
  • zlhxiaohui
  • 2014年10月11日 19:36
  • 570

SQL Server 表变量和临时表系列之概念篇

问题引入 “菜鸟啊,最近我看到阿里云开发者论坛的数据库RDS中有人在提SQL Server表变量和临时表如何选择的问题,你去深入探讨下这个问题吧,解答解答他们的疑惑吧”,老鸟又开始为菜鸟找活干了...
  • lishimin1012
  • lishimin1012
  • 2017年01月06日 14:37
  • 509

sqlserver 存储过程 临时表 时间计算 循环 问题

今天要做统计网站访问量的功能。结果存储过程不会,各种系统函数也不会用。客户那边还没网络。着实憋气了。 下面是查到的一些东西 一 、临时表的使用 表名前使用一个#号,临时表是局部的,使用两个#号,临时...
  • luckysiesteven
  • luckysiesteven
  • 2015年02月02日 22:10
  • 1342

SQL SERVER临时表的使用&表变量的使用

临时表: 创建临时表可以创建本地和全局临时表。本地临时表仅在当前会话中可见;全局临时表在所有会话中都可见。 本地临时表的名称前面有一个编号符 (#table_name),而全局临时表的名称前面有两个...
  • S630730701
  • S630730701
  • 2016年08月03日 16:57
  • 2345

关于with as 作为查询片段的使用和与临时表#Table的比较

http://bbs.csdn.net/topics/300131856 一.WITH AS的含义     WITH AS短语,也叫做子查询部分(subquery factoring),可以让你...
  • dahaizhiliang
  • dahaizhiliang
  • 2013年05月04日 15:49
  • 1287

优化临时表使用,SQL语句性能提升100倍

【问题现象】 线上mysql数据库爆出一个慢查询,DBA观察发现,查询时服务器IO飙升,IO占用率达到100%, 执行时间长达7s左右。 SQL语句如下: SELECT DISTINCT...
  • Before_Morning
  • Before_Morning
  • 2015年07月17日 09:47
  • 853

9、SQL Server:创建和使用临时表(转)

本文来自:http://blog.csdn.net/atian2009/article/details/6823129 创建临时表        方法一:      create table #...
  • xushaozhang
  • xushaozhang
  • 2017年02月16日 13:56
  • 323

SQL全局临时表防止用户重复登录

为了防止用户的重复登录,在一开始想到的一种方法: 在用户表中添加一个字段,登录后写1,退出后写0.这样子在用户登录进行检查的时候判断这个字段是否为0,如果是0那么就可以登录;但是这样子就又带来了新的问...
  • lypf19900912
  • lypf19900912
  • 2013年06月28日 09:41
  • 2950

运用sql语句创建临时表

首先我们来熟悉下临时表的概念: 临时表与永久表相似,但临时表存储在 tempdb 中,当不再使用时会自动删除。 临时表有两种类型:本地和全局。它们在名称、可见性以及可用性上有区别。本地临时...
  • winbobob
  • winbobob
  • 2014年04月10日 13:57
  • 2391
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Sql Server临时表
举报原因:
原因补充:

(最多只允许输入30个字)