DECLARE

num NUMBER;

BEGIN

-- 新增学生表 student

SELECT

COUNT (1) INTO num

FROM

cols

WHERE

table_name = UPPER ('student') ;

IF num > 0 THEN

EXECUTE IMMEDIATE 'DROP TABLE student' ;

EXECUTE IMMEDIATE 'CREATE TABLE student (

id NUMBER NOT NULL,

name VARCHAR2(40) NULL ,

xb VARCHAR2(40) NULL ,

age int(3) NULL ,

birthday DATE NULL ,

className VARCHAR2(80) NULL

)' ;

EXECUTE IMMEDIATE 'ALTER TABLE student ADD PRIMARY KEY (id)' ;

ELSE

EXECUTE IMMEDIATE 'CREATE TABLE student (

id NUMBER NOT NULL,

name VARCHAR2(40) NULL ,

xb VARCHAR2(40) NULL ,

age int(3) NULL ,

birthday DATE NULL ,

className VARCHAR2(80) NULL

)' ;

EXECUTE IMMEDIATE 'ALTER TABLE student ADD CHECK (ID IS NOT NULL)' ;

EXECUTE IMMEDIATE 'ALTER TABLE student ADD PRIMARY KEY (ID)' ;

END IF ;

-- 学生表新增班级 className 字段

SELECT COUNT(1)

INTO num

from cols

where table_name = upper('student')

and column_name = upper('className');

IF num > 0 THEN

execute immediate 'alter table student MODIFY (className varchar2(20))';

ELSE

execute immediate 'alter table student add className varchar2(40)';

END IF;

END;

oracle字段重复新增错误,Oracle 判断表或字段是否存在新增/修改表结构可重复执行sql...相关推荐

  1. oracle取消表空间自增长,oracle_创建表空间_临时表空间_修改表空间_以及自增长...

    管理员用户登录oracle数据库 [oracle@DBORACLE ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on ...

  2. js入门·表单详解一(修改表单属性,修改表单元素值)

    实在javascript入门·Document对象入门讲解(访问表单,创建新页,获取页标题) 一文中,我们已经把表单的一些基本访问等弄清楚了,下面我们深入的学下表单的属性以及对表单元素的简单操作! 演 ...

  3. oracle更新快捷方式的错误,oracle 11g数据库启动错误总结

    1.启动数据库时提示ORA-00845: MEMORY_TARGET not supported on this system (在oracle 11g中新增的内存自动管理的参数MEMORY_TARG ...

  4. mysql 改变表的类型吗_mysql中修改表类型所带来的问题探讨

    对于MySQL数据库,如果你要使用事务以及行级锁就必须使用INNODB引擎.如果你要使用全文索引,那必须使用myisam,那如何修改修改MySQL的引擎为INNODB呢,下面介绍一个修改方法. 对于M ...

  5. oracle字段重复新增错误,oracle在已有重复数据的列上创建唯一约束

    在有重复数据的列上添加unique constraints,大家正常的解决办法就修改重复数据,但也可以 保留重复数据,使约束对以后的数据有限制,不过我们还可以用以下的方法来添加唯一约束. SQL cr ...

  6. oracle数据库的基本错误,Oracle新手最常碰到错误及解决方案

    1.ORA-12541:TNS:没有监听器 原因:没有启动监听器或者监听器损坏. 若是前者,使用命令启动监听:net start OracleOraDb10g_home1TNSListener(名字可 ...

  7. oracle第二行出现错误,Oracle临时表ORA-14552错误(二)

    *第 1 行出现错误: ORA-14452: 试图创建, 更改或删除正在使用的临时表中的索引 唯一可以使用的方法是先truncate临时表,然后进行删除: SQL> truncate TABLE ...

  8. oracle数据库出现01034错误,Oracle数据库ORA-01034错误

    ORA-01034错误是Oracle数据库服务器比较常见的错误.有经验的用户很快就能解决这个错误,但对于初级用户来说解决起来却存在一定的难度(因为对于初级用户提Metalink也起不到什么作用--一般 ...

  9. Oracle输入默认密码错误,oracle中默认账号oracle 11g SQL plus软件怎么打开?打开显示密码错误怎么办?...

    oracle 11g SQL plus软件下载好后,它的sql plus图标一般都不会自动出现在电脑桌面上,这时候,我们需要手动去查找SQL plus ,并将它拖到电脑桌面上,不像台式电脑的开始界面, ...

最新文章

  1. MySQL两主多从,且故障转移配置
  2. 移植uboot第二步:分析uboot
  3. 如何用 Cocos Creator 3D 如何实现小姐姐的发丝高光?
  4. Hadoop HDFS概念学习系列之两个和HDFS读写操作最为密切的Hadoop包(二十)
  5. php服务器安装什么操作系统,php 服务器操作系统
  6. FTP主动模式和被动模式学习笔记
  7. Mysql练习_MySQL练习(一)
  8. [转载] python中numpy包使用方法总结
  9. java rome,ROME - RSS聚合类库 - 组件类库 - JAVA开源项目 - 开源吧
  10. java初学者代码练习题
  11. textbox++问题 汇总 如:assert len 0 builtin_function_or_method() int()
  12. 鹏业软件CAD云服务转图纸没反应的说明
  13. iWebShop 二次开发之商城后台模板渲染流程
  14. 弱水三千只取一瓢,Forcepoint的变与不变
  15. 电脑qq传到我的android文件在哪里,手机QQ传文件到我的电脑功能(QQ数据线)的使用方法...
  16. C#的AES加密解密(ECB)
  17. python爬取视频--下载2019巴菲特股东大会直播视频
  18. 中国第三代半导体行业运行现状及十四五规划研究分析报告2022-2028年版
  19. c语言链表单值化,《编译原理及实践教程》第3章词法分析.ppt
  20. 从维基百科、Quora到知乎,下一代知识社交平台如何表现?

热门文章

  1. zigbee 常规配置
  2. oracle中通过游标实现查询
  3. 排序算法模板(C语言版)
  4. 【JDK源码】java.io包常用类详解
  5. django学习(1)-----项目组成
  6. JS面向对象的程序设计之继承-继承的实现-借用构造函数
  7. Python入门-day1变量和简单数据类型
  8. 多继承有什么坏处,为什么java搞单继承,接口为什么可以摈弃这些坏处
  9. Linux 3.10 新特性
  10. Java多线程初学者指南(12):使用Synchronized块同步变量