SQLserver--临时表、表变量、视图
发布时间:2020-12-12 14:23:52 所属栏目:MsSql教程 来源:网络整理
导读:局部临时表 create table #tbName(列信息); 表名前缀 # 只在当前会话中有效,不能跨连接访问 作用域范围类似 C# : 如果直接在连接会话中创建的,则当前连接断开后删除,如果是在存储过程中创建的则当前存储过程执行完毕后删除 全局临时表 create table ##tb
局部临时表
create table #tbName(列信息);
表名前缀#
只在当前会话中有效,不能跨连接访问
作用域范围类似C#:
如果直接在连接会话中创建的,则当前连接断开后删除,如果是在存储过程中创建的则当前存储过程执行完毕后删除
全局临时表
create table ##tbName(列信息);
表名前缀##
多个会话可共享全局临时表
当创建全局临时表的会话断开,并且没有用户正在访问全局临时表时删除
?
表变量:
declare @varT1 table(col1 int,col2 char(2));//存储更小量的数据,比临时表有更多的限制。
临时数据都存储在tempdb,当服务重新启动的时候,会重建tempdb.
临时表的应用:在对大数据量的表做复杂子查询的时候为了提高执行效率,降低内存消耗可以使用临时表。
?
视图
?
视图是一张虚拟表,它表示一张表的部分数据或多张表的综合数据,其结构和数据是建立在对表的查询基础上
视图在操作上和数据表没有什么区别,但两者的差异是其本质是不同:数据表是实际存储记录的地方,然而视图并不保存任何记录。
相同的数据表,根据不同用户的不同需求,可以创建不同的视图(不同的查询语句)
视图的目的是方便查询,所以一般情况下不能对视图进行增删改
优点:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |