6.2、临时表--Oracle模式对象
临时表的特点:
(1).只有在用户向表中添加数据时,Oracle才会为其分配存储空间。
(2).为临时表分配空间来自临时表空间,避免与永久对象的数据争取存储空间;
(3).临时表占用的存储空间,随着事务结束或会话终止而被释放,数据也丢失;
(4).和堆表一样,可以在临时表上创建索引、视图和触发器等。
事务级别临时表:
--创建事务临时表user_trans
create global temporary table user_trans( id number, uname varchar2(10), usex varchar2(2), ubirthday date ) on commit delete rows;
--插入一条记录数据
insert into user_trans values(1,'tyou','男',to_date('1988-09-15','yyyy-mm-dd'));
--查询验证记录是否存在
select * from user_trans;
--提交事务操作
commit;
--再查询查看数据是否存在
select * from user_trans;
--查看创建的临时表空间还存在不
会话级别临时表:
--创建会话临时表user_sess
create global temporary table user_sess( id number, uname varchar2(10), usex varchar2(2), ubirthday date ) on commit preserve rows;
--插入一条记录数据
insert into user_sess values(2,'thm','女',to_date('1988-09-15','yyyy-mm-dd'));
--查询验证记录是否存在
select * from user_sess;
--断开当前连接会话
disc
--重新创建连接会话,再查询查看数据是否存在
生命不息,折腾不止;不计后果,不问前程!