Oracle SQL Developer是Oracle近几年来推出的一款免费的图形界面SQL PL/SQL开发工具,在11g中它甚至被集成到了Oracle server软件中;如果你平常有用这款IDE的话,大概会注意到它提供了十分实用的Database copy,diff,export功能。 当在Oracle SQL developer中使用sys用户登录数据库,并尝试导出某些schema的ddl定义时,可能会丢失一些constraint约束的ddl信息,如以下例子:  我们尝试导出scott用户的表,索引以及约束的相关ddl,当使用sys用户登录数据库时,Oracle SQL developer给出的SQL:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
--------------------------------------------------------
--  File created - Monday-August-30-2010
--------------------------------------------------------
--------------------------------------------------------
--  DDL for Table BONUS
--------------------------------------------------------
  CREATE TABLE "BONUS"
   (    "ENAME" VARCHAR2(10),
    "JOB" VARCHAR2(9),
    "SAL" NUMBER,
    "COMM" NUMBER
   ) ;
--------------------------------------------------------
--  DDL for Table DEPT
--------------------------------------------------------
  CREATE TABLE "DEPT"
   (    "DEPTNO" NUMBER(2,0),
    "DNAME" VARCHAR2(14),
    "LOC" VARCHAR2(13)
   ) ;
--------------------------------------------------------
--  DDL for Table EMP
--------------------------------------------------------
  CREATE TABLE "EMP"
   (    "EMPNO" NUMBER(4,0),
    "ENAME" VARCHAR2(10),
    "JOB" VARCHAR2(9),
    "MGR" NUMBER(4,0),
    "HIREDATE" DATE,
    "SAL" NUMBER(7,2),
    "COMM" NUMBER(7,2),
    "DEPTNO" NUMBER(2,0)
   ) ;
--------------------------------------------------------
--  DDL for Table SALGRADE
--------------------------------------------------------
  CREATE TABLE "SALGRADE"
   (    "GRADE" NUMBER,
    "LOSAL" NUMBER,
    "HISAL" NUMBER
   ) ;
--------------------------------------------------------
--  DDL for Index PK_DEPT
--------------------------------------------------------
  CREATE UNIQUE INDEX "PK_DEPT" ON "DEPT" ("DEPTNO")   ;
--------------------------------------------------------
--  DDL for Index PK_EMP
--------------------------------------------------------
  CREATE UNIQUE INDEX "PK_EMP" ON "EMP" ("EMPNO")   ;

以上SQL中未给出PK和FK约束的ddl信息。 如果使用scott用户登录数据库,导出自身schema的table,index,constraint定义信息时:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
--------------------------------------------------------
--  File created - Monday-August-30-2010
--------------------------------------------------------
--------------------------------------------------------
--  DDL for Table BONUS
--------------------------------------------------------
  CREATE TABLE "BONUS"
   (    "ENAME" VARCHAR2(10),
    "JOB" VARCHAR2(9),
    "SAL" NUMBER,
    "COMM" NUMBER
   ) ;
--------------------------------------------------------
--  DDL for Table DEPT
--------------------------------------------------------
  CREATE TABLE "DEPT"
   (    "DEPTNO" NUMBER(2,0),
    "DNAME" VARCHAR2(14),
    "LOC" VARCHAR2(13)
   ) ;
--------------------------------------------------------
--  DDL for Table EMP
--------------------------------------------------------
  CREATE TABLE "EMP"
   (    "EMPNO" NUMBER(4,0),
    "ENAME" VARCHAR2(10),
    "JOB" VARCHAR2(9),
    "MGR" NUMBER(4,0),
    "HIREDATE" DATE,
    "SAL" NUMBER(7,2),
    "COMM" NUMBER(7,2),
    "DEPTNO" NUMBER(2,0)
   ) ;
--------------------------------------------------------
--  DDL for Table SALGRADE
--------------------------------------------------------
  CREATE TABLE "SALGRADE"
   (    "GRADE" NUMBER,
    "LOSAL" NUMBER,
    "HISAL" NUMBER
   ) ;
--------------------------------------------------------
--  Constraints for Table EMP
--------------------------------------------------------
  ALTER TABLE "EMP" ADD CONSTRAINT "PK_EMP" PRIMARY KEY ("EMPNO") ENABLE;
--------------------------------------------------------
--  Constraints for Table DEPT
--------------------------------------------------------
  ALTER TABLE "DEPT" ADD CONSTRAINT "PK_DEPT" PRIMARY KEY ("DEPTNO") ENABLE;
--------------------------------------------------------
--  DDL for Index PK_EMP
--------------------------------------------------------
  CREATE UNIQUE INDEX "PK_EMP" ON "EMP" ("EMPNO")   ;
--------------------------------------------------------
--  DDL for Index PK_DEPT
--------------------------------------------------------
  CREATE UNIQUE INDEX "PK_DEPT" ON "DEPT" ("DEPTNO")  ;
--------------------------------------------------------
--  Ref Constraints for Table EMP
--------------------------------------------------------
  ALTER TABLE "EMP" ADD CONSTRAINT "FK_DEPTNO" FOREIGN KEY ("DEPTNO")
      REFERENCES "DEPT" ("DEPTNO") ENABLE;

Oracle SQL developer给出了正确的SQL,包含FK和PK约束。 这个Bug在8月(2010 Aug)被确认将影响此前所有版本的Oracle SQL developer。

本文转自maclean_007 51CTO博客,原文链接:http://blog.51cto.com/maclean/1277141

Oracle SQL Developer 的一个Bug相关推荐

  1. oracle的高级特性,Oracle SQL Developer 的高级特性

    该教程演示 Oracle SQL Developer 的几个更高级特性. 大约 50 分钟 Oracle SQL Developer 是一个免费的图形工具,可提高工作效率并简化数据库开发任务.使用 S ...

  2. Oracle数据库以及Oracle SQL Developer初体验

    首先进入SQL PLUS,这里输入 sys/as sysdba,回车.(貌似是超级管理员权限).之后也可以在里面建表插入等. 接下来讲讲如何用Oracle SQL Developer建表等操作. 先进 ...

  3. Oracle Sql Developer

    刚刚入职,闲来无事,补补学的一塌糊涂的Oracle(确切的说这课我一节都没去上过). 安装Oracle也不算太容易,网上到处查资料弄了一会,装好之后发现sql*plus实在不好用,正好上午培训课介绍了 ...

  4. oracle sql developer 查看游标结果集(3.0.04

    http://space.itpub.net/23065269/viewspace-714035 以前在oracle sql developer里,要查看存储过程的结果集,只能是通过写个函数来查看,这 ...

  5. oracle sql 输出,将数据从Oracle SQL Developer导出到Excel .xlsx

    将数据从Oracle SQL Developer导出到Excel .xlsx 我有一个小型项目,需要将Oracel SLQ Developer的数据导出到Excel(使用SLQ Developer中的 ...

  6. 走向云端:Oracle SQL Developer Web 即将上线!

    引言:Oracle SQL Developer 是一款免费的桌面应用,是数据库的图形用户界面,它具有 DBA 的全部功能,能够对 PL/SQL 进行开发,还有命令行开发页面,全世界有近500万用户在 ...

  7. 使用Oracle SQL Developer 编写运行 PL/SQL 块

    首先, 普及一下基本概念: PL/SQL 是过程语言(Procedural Language)与结构化查询语言(SQL)结合而成的编程语言. PL/SQL 块对应的就是一小段代码了. 适用说明: 1. ...

  8. oracle+表无法查询,Oracle SQL Developer - 无法同时查询2个表

    我最近必须将数据库从SQL Studio移到Oracle,并且我正在学习必须使用的所有不同语法.Oracle SQL Developer - 无法同时查询2个表 无论如何,今天我遇到了一个问题,我试图 ...

  9. 正确加载MySQL驱动的语句_使用数据库客户端工具Oracle SQL Developer加载第三方驱动连接mysql的方法...

    用Oracle SQL Developer时遇到no ocijdbc11 in java.library.path怎么办 不是配置环境变量,而是去选项里面,添加数据库的驱动 jdbc的驱动没有在cla ...

最新文章

  1. 2021-2027全球与中国经颅磁刺激仪(TMS)市场现状及未来发展趋势
  2. python乐观锁代码实现_Elasticsearch系列—并发控制及乐观锁实现原理
  3. 难以想象!未来十年,颠覆性技术将带来这些社会变革……
  4. Mysql 安装服务无法启动解决方案与使用的一般使用指令
  5. 实际部署遇到的一些问题
  6. 【Linux系统编程】进程间通信--无名管道(pipe)
  7. android 导入so库文件
  8. 无代码iVX编程实现简单魂斗罗
  9. 存根类 测试代码 java_嘲弄和存根–了解Mockito的测试双打
  10. 二叉查找树--插入、删除、查找
  11. C++ STL 学习 :for_each与仿函数(functor)
  12. Atitt php script lan debug bp 最佳实践调试php目录1.1. Error_log 11.2. Echo vs log法 11.3. 输出与debug信息昏药问题
  13. 怎么手动修改域名服务器地址,如何修改域名dns服务器地址
  14. 计算机病毒模块测试题,计算机病毒分类测试题集
  15. 微软XSD工具根据XSD文件生成的C#类中多余Specified属性问题
  16. 微信小视频显示服务器正在升级,更新微信版本后 朋友圈小视频提示显示录制时间太短的解决办法...
  17. 十万部冷知识:“澳大利亚”为什么属于亚洲球队?
  18. 网站后台万能密码/10大常用弱口令
  19. 中暑了,别只知道喝藿香正气水、擦清凉油!这个防暑妙招你得懂
  20. Excel文件无法保存

热门文章

  1. 2017年首份中美数据科学对比报告,Python受欢迎度排名第一,美国数据工作者年薪中位数高达11万美金
  2. MyBatis中使用流式查询避免数据量过大导致OOM
  3. 撸了个低代码开发平台,爽!
  4. Spring中的18个注解,你会几个?
  5. 机器学习博士在获得学位之前需要掌握的九种工具!
  6. 10万现金+高薪offer!新网银行智能语音大赛火热进行中
  7. 深度学习「CV」学习实践指南!
  8. 词向量, BERT, ALBERT, XLNet全面解析(ALBERT第一作者亲自讲解)
  9. GIA张怡:关于小白入门AI算法工程师的直播分享
  10. 研究生失联19天,父母焦急求助!最后竟然是在写博士研究计划......