[SQLServer]临时表

局部临时表和全局临时表,临时表被创建到tempdb数据库中。


局部临时表会一直存活,直到创建它的数据库连接被删除,当存储过程运行完毕,或是查询编辑器窗口关闭时,就会发生连接被删除。局部临时表的命名使用#开头。

CREATE TABLE #tempTB(id VARCHAR(10), name VARCHAR(20));
INSERT INTO #tempTB VALUES('aa','bb');
SELECT * FROM #tempTB;
DROP TABLE #tempTB;

也可以使用

CREATE TABLE #tempTB(id VARCHAR(10), name VARCHAR(20));
INSERT INTO #tempTB SELECT r.id, r.name FROM realTB r


全局临时表生存期明显不同。当一个连接创建一个全局临时表时,它可以被其他用户和其他任何连接所使用,只有当该数据库上所有连接都被关闭后,全局临时表才会被"删除"。全局临时表的命名使用##开头。

CREATE TABLE ##tempTB(id VARCHAR(10), name VARCHAR(20))
INSERT INTO ##tempTB VALUES('aa','bb')
SELECT * FROM ##tempTB
DROP TABLE ##tempTB

也可以使用

CREATE TABLE ##tempTB(id VARCHAR(10), name VARCHAR(20));
INSERT INTO ##tempTB SELECT r.id, r.name FROM realTB r
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值