Oracle中判断表是否存在再删除表避免报错与MySql和SqlServer的不同

2014-11-24 18:08:34 · 作者: · 浏览: 3

不同数据库中drop a table if it exists的不同:


DROP TABLE IF EXISTS [table_name]


Oracle:


BEGIN


EXECUTE IMMEDIATE 'DROP TABLE [table_name]';


EXCEPTION WHEN OTHERS THEN NULL;


END;


SQL Server:


IF EXISTS (


SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES


WHERE TABLE_NAME = '[table_name]')


DROP TABLE [table_name]


ORACLE中先判断表是否存在再新建表一例:


此例用在数据仓库项目的建T99代码表脚本方案上;此脚本在方案中用Perl根据Excel生成。