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

In MySQL it is pretty easy to drop a table if it exists already. In Oracle and Microsoft’s SQL Server it is a little more complicated. Today I want to present you the solutions for these two DBMS’.

MySQL:

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中先判断表是否存在再新建表一例:

declare

v_exists number;

begin

--1、任务类型 TASK_TYPE_CD 建表...

select count(*) into v_exists from user_tables where table_name ='EDW_T99_TASK_TYPE_CD';

ifv_exists > 0 then

execute immediate'drop table EDW_T99_TASK_TYPE_CD';

endif;

execute immediate '

create table EDW_T99_TASK_TYPE_CD

(

CODE_CD   VARCHAR2(20) PRIMARY KEY,

CODE_DESC VARCHAR2(100)

)';

execute immediate'comment on table EDW_T99_TASK_TYPE_CD is ''任务类型''';

execute immediate'comment on column EDW_T99_TASK_TYPE_CD.CODE_CD is ''代码''';

execute immediate'comment on column EDW_T99_TASK_TYPE_CD.CODE_DESC is ''代码描述''';

--2、买入产品代码 BUY_TYPE_CD 建表...

select count(*) into v_exists from user_tables where table_name ='EDW_T99_BUY_TYPE_CD';

ifv_exists > 0 then

execute immediate'drop table EDW_T99_BUY_TYPE_CD';

endif;

execute immediate '

create table EDW_T99_BUY_TYPE_CD

(

CODE_CD   VARCHAR2(20) PRIMARY KEY,

CODE_DESC VARCHAR2(100)

)';

execute immediate'comment on table EDW_T99_BUY_TYPE_CD is ''买入产品代码''';

execute immediate'comment on column EDW_T99_BUY_TYPE_CD.CODE_CD is ''代码''';

execute immediate'comment on column EDW_T99_BUY_TYPE_CD.CODE_DESC is ''代码描述''';

end;

/

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

MySQL与oracle报错显示_Oracle中判断表是否存在再删除表避免报错与MySql和SqlServer的不同...相关推荐

  1. [Oracle][Standby][PDB]在PDB中修改参数,设置范围为 SPFILE,报 ORA-65099错误

    [Oracle][Standby][PDB]在PDB中修改参数,设置范围为 SPFILE,报 ORA-65099错误 在Data Gaurd 的 Standby (或 CDB 是 Read Only ...

  2. MySQL 学习笔记(4)— 组合查询、子查询、插入数据、更新/删除表数据、增加/删除表中的列以及重命名表

    1. 组合查询 1.表的加减法 表的加法,即求 product 和 product2 的并集,UNION 运算会除去重复的记录 SELECT product_id, product_name FROM ...

  3. 删除磁盘上的表空间后再删除数据库中的表空间——ORA-01549:表空间非空,请使用including contents选项

    前提:电脑盘中误删了表空间,没有备份,无法恢复,为重新使用该表空间,需要删除该表空间,重新建立一个新的同名表空间,在PLSQL中右键删除该表空间时候,无法删除. 问题:在PLSQL中右键删除表空间,无 ...

  4. mysql创建外键级联更新_MySQL中利用外键实现级联删除、更新

    MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在创建索引的时候,可以指定在删除.更新父表时,对子表进行的相应操作 ...

  5. mysql与oracle互转【数据库条件判断+数据库日期+数据库字符串拼接+数据库获取星期】

    mysql与oracle互转 对比 一览表 1.条件判断 2.日期增减 3.日期格式 4.字符串拼接 5.获取星期 相同 对比 一览表 功能 mysql oracle 条件判断 if(expr1,ex ...

  6. mysql删除表崩溃_MySQL在删除表时I/O错误原因分析

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 问题现象 最近使用sysbench测试MySQL,由于测试时间较长,写了一个脚本按prepare->run->cleanup的顺 ...

  7. mysql和oracle复杂查询语句_oracle表复杂查询

    Oracle表复杂查询 聚合函数 max(字段值)  -- 求最大值 min(字段值)  -- 求最小值 sum(字段值)  -- 求总和 avg(字段值)  -- 求平均值 count(字段值)  ...

  8. oracle的clob赋值_Oracle中Clob类型处理解析 (转)

    最近利用NHibernate映射类型为Clob字段在插入数据时发现当字符的字节数(一个半角字符一个字节,一个全角字符两个字节)在2000-4000之间时报错(ORA-01461:仅可以插入LONG列的 ...

  9. mysql查询表的列名主键_Oracle中查看所有的表,用户表,列名,主键,外键

    在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user_ ...

最新文章

  1. 数字图像处理:第五章 代数运算
  2. 导入之后再执行一个方法_种花生再撒点儿石灰,掌握这两个方法之后,提高产量基本没问题!...
  3. 中国大学MOOC 人工智能导论第六章测试
  4. linux磁盘配额edquota,Linux磁盘配额(Quota)
  5. 变量声明方式:let与var的区别
  6. 洛谷P1690 贪婪的Copy 题解
  7. python sizeof_python 变量作用域 v.__sizeof__() python 深复制 一切皆对象 尽量减少内存消耗 赋值语句的原理...
  8. 要想挣大钱,就要懂一个基本
  9. Codeforces Edu Round 64 (Rated for Div. 2)
  10. [转]查看linux服务器硬盘IO读写负载
  11. [转载] Python 字典(Dictionary) get()方法
  12. 湖北生物科技职业学院计算机专业分数线,湖北生物科技职业学院录取分数线2021是多少分(附历年录取分数线)...
  13. java hasnext_java hasNext()使用实例解析
  14. hadoop2.x配合ZooKeeper集群环境搭建
  15. 2017年10月、11月 windows 用360 打最新补丁导致的问题
  16. AIX系统 topas查看系统各项指标性能
  17. mantis修改mysql端口_Mantis配置指南
  18. android 基带版本,基带是什么 基带版本是什么
  19. Linux查询IP失败
  20. matlab如何显示神经网络的均方误差,matlab神经网络工具箱

热门文章

  1. win7笔记本电脑如何分割和重命名磁盘
  2. 中石油oj 2654: 序列合并
  3. 操作系统原理:操作系统的启动 中断/异常/系统调用
  4. SQL各种join用法
  5. 河南工业大学计算机网络技术,河南工业大学2019年硕士研究生入学信息科学与工程学院计算机网络自命题考试大纲...
  6. 卡方 python_卡方优度检测 (Python 实现) --基于jupyter
  7. 7.使用php描述冒泡排序,PHP 数据结构 算法描述 冒泡排序 bubble sort
  8. 前15天mysql_Mysql查询今天/昨天/15天前/上个月/去年/上周每日等函数
  9. js实现轮播图_高性能轻量级零依赖的轮播图组件——Glider.js
  10. LGOJ P3919【模板】可持久化数组(可持久化线段树/平衡树)