oracle # 表名加井号,SQL server 中表名前面的井号(#)

表名前加#表示这是一个临时表

例如在存储过程中声明一个临时表

CREATE TABLE #temp

(

ID varchar(50)

,NAME varchar(50)

)

或者

SELECT * INTO #table FROM user

这二种都是创建临时表

本地临时表VS全局临时表

临时表

SQL Server 支持临时表。临时表就是那些名称以井号 (#) 开头的表。如果当用户断开连接时没有除去临时表,SQL Server 将自动除去临时表。临时表不存储在当前数据库内,而是存储在系统数据库 tempdb 内。

临时表有两种类型:

本地临时表

以一个井号 (#) 开头的那些表名。

只有在创建本地临时表的连接上才能看到这些表。

全局临时表

以两个井号 (##) 开头的那些表名。

在所有连接上都能看到全局临时表。

如果在创建全局临时表的连接断开前没有显式地除去这些表,那么只要所有其它任务停止引用它们,这些表即 被除去。

当创建全局临时表的连接断开后,新的任务不能再引用它们。

当前的语句一执行完,任务与表之间的关联即被除去;因此通常情况下,只要创建全局临时表 的连接断开,全局临时表即被除去。

临时表其实是放在数据库tempdb里的一个用户表

分两种:

一种是以#(局部)或##(全局)开头的表,这种表在会话期间存,会话结束则自动删除;

另一种,如果创建时不以#或##开头,而用tempdb.TempTable来命名它,则该表可在数据库重启前一直存在.

以上两种都可手动用

DROP TABLE TempTableName

来删除.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值