为什么我把临时表(GLOBAL TEMPORARY TABLE)A用一般表(TABLE)A代替后在还原回去,那个临时表就不起作用了,什么数据都取不到。
环境:ORACLE 8。15 +DELPHI 6。0
请高手帮忙
---------------------------------------------------------------
在Oracle8i中,可以创建以下两种临时表:
1。会话特有的临时表
CREATE GLOBAL TEMPORARY
1<table_name> (<column specification=""> )
2ON COMMIT PRESERVE ROWS;
3
42。事务特有的临时表
5CREATE GLOBAL TEMPORARY <table_name> (<column specification=""> )
6ON COMMIT DELETE ROWS;
7CREATE GLOBAL TEMPORARY TABLE MyTempTable
8所建的临时表虽然是存在的,但是你试一下insert 一条记录然后用别的连接登上去select,记录是空的,明白了吧。
9下面两句话再贴一下:
10\--ON COMMIT DELETE ROWS 说明临时表是事务指定,每次提交后ORACLE将截断表(删除全部行)
11\--ON COMMIT PRESERVE ROWS 说明临时表是会话指定,当中断会话时ORACLE将截断表。
12
13\---------------------------------------------------------------</column></table_name></column></table_name>