Oracle、Mysql临时表:数据只在事务或者会话期间存在,保存临时用到的数据。
分为两种:
一、会话指定的临时表(会话级别)
中断会话时,此临时表才会消失。
create globle temporary table_name(
id int primary key,
name varchar2(30)
)on commit preserve rows;
二、事务指定的临时表(事务级别)
当前事务提交后,临时表消失。
create globle temporary table_name(
id int primary key,
name varchar2(30)
)on commit delete rows;
这里补充一下,事务结束的标志:
1.显示提交::commit
2.隐式提交:执行ddl或者dcl语句
ddl:create drop alter
dcl:grant revoke 等
SQLServer中的临时表:
一、全局临时表
所有的连接,都可以看到此临时表。
当创建临时表的连接断开,并且引用全局临时表的连接全部断开后,此表才会消失。
create table ##table_name(
.........
)
或者
select * into ##table_name from 基本表;
二、局部临时表
只有创建该临时表的连接能引用此表,其他连接不能引用。
创建临时表的连接断开后,此表消失。
create table #table_name(
.........
)
或者
select * into #table_name from 基本表;