临时表解析
来源:互联网 发布:ubuntu修复grub引导 编辑:程序博客网 时间:2024/06/03 20:24
--==============================================
作者:王运亮(wwwwgou)
时间:2011-04-16
博客:http://blog.csdn.net/wwwwgou
--==============================================
#1.临时表与永久表相似,但临时表存储在tempdb中,当不再使用时会自动删除
#2.临时表有两种类型:本地和全局,区别如下:
1. 本地临时表以#开头,仅对当前的用户连接是可见的,当用户从SQL Server实例断开连接时被删除.
1.在MSSM中新建一个查询(相当于新建一个连接)
2.执行SQL: CREATE TABLE #temp(id INT)
3.查询此表在系统对象表中是否存在SQL:
SELECT [name] FROM sys.tables WHERE [object_id] = object_id('tempdb..#temp', 'u')
/*
#temp__________________________000000000010 --系统为表名自动添加了唯一标识.这里省略了一些'_'字符
*/
4.再新建一个连接,创建一个名为#temp的临时表(执行步骤2),当然,系统会自动为它添加唯一标识
SELECT [name] FROM sys.tables WHERE [name] like '%temp%'
/*
#temp__________________________000000000010
#temp__________________________000000000011
*/
5.关闭查询窗口(相当于断开连接),#temp自动删除.
2. 全局临时表以##开头,创建后对任何用户都是可见的,当所有引用该表的用户从SQL Serve 断开连接时被删(注意此句话的含义).
1.在MSSM中新建一个查询
2.执行SQL: CREATE TABLE ##temp(id INT)
3.查询此表在系统对象表中是否存在SQL:
SELECT [name] FROM sys.tables WHERE [object_id] = object_id('tempdb..##temp', 'u')
/*
##temp --注意,系统未为表名添加唯一标识
*/
4.再新建一个连接,如果再执行步骤2会报错: There is already an object named '##temp' in the database.但可以引用##temp表: SELECT * FROM ##temp
SELECT [name] FROM sys.tables WHERE [name] like '%temp%'
/*
#temp__________________________000000000010
##temp
#temp__________________________000000000011
*/
5.关闭查询窗口(相当于断开连接),##temp在最后一个引用(指的是正在用)##temp的窗口断开时自动删除
#3.表变量可以当普通变量来理解.它会存储在内存中(系统会自动计算,如果内存不够用,则存储在tempdb中)
#4.会话和连接的区别: 比较相似,但不完全相同. 通俗的意思就是:会话指的是和表数据的交流.连接指的是同数据库的交流.查看当前数据库的连接个数SQL:
SELECT * FROM master..sysprocesses WITH(NOLOCK) WHERE [DBID] = DB_ID('db_name')
- 临时表解析
- 用临时内存表解决过滤查询结果集
- 虚函数表解析
- 虚函数表解析
- 虚函数表解析
- 虚函数表解析
- 虚函数表解析
- 虚函数表解析
- ecmall数据库表解析
- linux链表解析
- 集合链表解析
- 虚函数表解析
- 虚函数表解析
- 虚函数表解析
- KRONOS 基表解析
- 虚函数表解析
- 虚函数表解析
- 虚函数表解析
- linux下select()中的timeout的设置与不设置问题
- C++学习笔记
- 使用JNI技术实现JAVA程序调用dll
- Diskpart 命令行实用工具介绍
- (转)onInterceptTouchEvent和onTouchEvent调用时序
- 临时表解析
- datarec.cpp
- WPF控件学习系列---StackPanel控件
- 备忘:oracle遇到的应用
- datarec.h
- 如何通过序列化在网络间传递对象,网络协议:轻松定义自己的网络通讯协议
- 简单WINFORM安装程序制作
- Oracle7
- liset.cpp