1.关于Oracle临时表:
会话级的临时表:
创建语句后加上ON COMMIT PRESERVE ROWS
事务级的临时表:
创建语句后加上On Commit Delete Rows
注意:事务级别的临时表数据在 commit,truncate,EXECUTE IMMEDIATE后数据消失
2.关于Oracle中IF的使用:
代码示例:
IF
BEGIN
....
END
END IF;
注意:END if;一定不能少
3.快速创建表
代码示例
CREATE TABLE 表1 AS SELECT * FROM 表2;
注意:此种方式创建的表1并不拥有表2的索引,主键等等
4.查看当前用户表的记录数
select Num_Rows from user_tables where Table_Name = 表名
select Num_Rows from dba_tables where Table_Name = 表名
user_tables查询的是当前用户所查表的记录数,dba_tables查询的是所有数据库用户所查表的记录数。
注:此表的刷新具有时间间隔,不是实时,如果想要查询实时的记录数
select count(0) from 表名
5.关于异常抛出
代码示例
BEGIN
...
EXCEPTION
...
END
可以直接处理也可以向上RAISE,向上抛出了,异常可以传递,非常类型java的throwException。
5.合并sql的脚本
- rem 合并SQL脚本
- @echo off
- set "filename=full.sql"
- if exist "%filename%" del "%filename%"
- for /r ./ %%f in (*.sql) do (
- if not "%%~nf%%~xf"=="%filename%" (
- echo %%~nf%%~xf
- type %%f>>"%filename%"
- echo. >>"%filename%"
- )
- )
- echo %filename% 已经被创建
- pause