求教ORACLE临时表的问题 会话结束的时候临时表也就被drop了,结构和数据都没有了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 只清除数据,不清除表结构CREATE GLOBAL TEMPORARY TABLE tmp_test (aa VARCHAR2(50), bb NUMBER(4,0))ON COMMIT PRESERVE ROWS 那就是说要是想清除表只能手动,ORACLE不能自动清除了? 在Oracle8i中,可以创建以下两种临时表: 1。会话特有的临时表 CREATE GLOBAL TEMPORARY <TABLE_NAME> (<column specification> ) ON COMMIT PRESERVE ROWS; 2。事务特有的临时表 CREATE GLOBAL TEMPORARY <TABLE_NAME> (<column specification> ) ON COMMIT DELETE ROWS; CREATE GLOBAL TEMPORARY TABLE MyTempTable 所建的临时表虽然是存在的,但是你试一下insert 一条记录然后用别的连接登上去select,记录是空的,明白了吧。下面两句话再贴一下: --ON COMMIT DELETE ROWS 说明临时表是事务指定,每次提交后ORACLE将截断表(删除全部行) --ON COMMIT PRESERVE ROWS 说明临时表是会话指定,当中断会话时ORACLE将截断表。 在系统配置时就建立好。可能用惯了MSSQL临时表的人对ORACLE的做法有点郁闷,但是我觉得这时一件好事情。至少系统管理者不必担心开发人员随时生成临时表。 求助:两个 t-sql转plsql语句 imp导入报错,求帮忙看看。 如何在一张表中设置双重主键 用存储过程还是触发器 向高手请教一个非常难的SQL语句写法.搞定了一定给分 vc用ado连接oracle的问题,高手快来啊......... 在 oracle 网站下载的 Oracle 10g 与购买正版的有什么区别呢? 升星了,散分 到底哪里错了!!! 无法安装????? ado.net连接数据库的时候能否连到具体的方案? 删除临时表
CREATE GLOBAL TEMPORARY TABLE tmp_test
(aa VARCHAR2(50),
bb NUMBER(4,0))
ON COMMIT PRESERVE ROWS
1。会话特有的临时表
CREATE GLOBAL TEMPORARY <TABLE_NAME> (<column specification> )
ON COMMIT PRESERVE ROWS; 2。事务特有的临时表
CREATE GLOBAL TEMPORARY <TABLE_NAME> (<column specification> )
ON COMMIT DELETE ROWS;
CREATE GLOBAL TEMPORARY TABLE MyTempTable
所建的临时表虽然是存在的,但是你试一下insert 一条记录然后用别的连接登上去select,记录是空的,明白了吧。
下面两句话再贴一下:
--ON COMMIT DELETE ROWS 说明临时表是事务指定,每次提交后ORACLE将截断表(删除全部行)
--ON COMMIT PRESERVE ROWS 说明临时表是会话指定,当中断会话时ORACLE将截断表。
可能用惯了MSSQL临时表的人对ORACLE的做法有点郁闷,但是我觉得这时一件好事情。至少系统管理者不必担心开发人员随时生成临时表。