sql server中的临时表与普通表有什么区别?

发布网友 发布时间:2022-04-24 04:40

我来回答

3个回答

热心网友 时间:2022-04-08 01:27

临时表分为:

本地临时表,仅限于当前访问者访问,创建方法去如下:
create table #TableName(表结构)
储存于数据库tempdb内(硬盘),当前用户断开连接,自动删除
如果使用中不断开连接,且不需要该临时表请执行:drop table #TableName

全局临时表,所有访问用户访问,创建方法去如下:
create table ##TableName(表结构)
储存于数据库tempdb内,当所有访问用户断开连接,自动删除
删除语句:drop table ##TableName

热心网友 时间:2022-04-08 02:45

恩 我觉得应该是在客户的内存中形成的 理论我也不大清楚 给你举个例子吧

SELECT * FROM (SELECT * FROM table_a WHERE column_a=123) new

其中括号里面的就是子查询时形成的临时表 给他取名为new 然后再从这个new表里面查询别的信息
当这个语句结束时 new表就释放掉了 再也无法访问

热心网友 时间:2022-04-08 04:20

作用域不同,当你关闭sql连接的时候 临时表就会 自动删除,普通表不会
1、创建方法:
方法一:
create table TempTableName

select [字段1,字段2,...,] into TempTableName from table
方法二:
create table tempdb.MyTempTable(Tid int)
说明:
(1)、临时表其实是放在数据库tempdb里的一个用户表;
(2)、TempTableName必须带“#”,“#"可以是一个或者两个,以#(局部)或##(全局)开头的表,这种表在会话期间存在,会话结束则自动删除;
(3)、如果创建时不以#或##开头,而用tempdb.TempTable来命名它,则该表可在数据库重启前一直存在。
2、手动删除
drop table TempTableName

普通表和临时表的区别只是表名开头无 "#"

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com