<a href="http://blog.51cto.com/maclean/1277141#">?</a>
<code>--------------------------------------------------------</code>
<code>-- File created - Monday-August-30-2010</code>
<code>-- DDL for Table BONUS</code>
<code> </code><code>CREATE</code> <code>TABLE</code> <code>"BONUS"</code>
<code> </code><code>( </code><code>"ENAME"</code> <code>VARCHAR2(10),</code>
<code> </code><code>"JOB"</code> <code>VARCHAR2(9),</code>
<code> </code><code>"SAL"</code> <code>NUMBER,</code>
<code> </code><code>"COMM"</code> <code>NUMBER</code>
<code> </code><code>) ;</code>
<code>-- DDL for Table DEPT</code>
<code> </code><code>CREATE</code> <code>TABLE</code> <code>"DEPT"</code>
<code> </code><code>( </code><code>"DEPTNO"</code> <code>NUMBER(2,0),</code>
<code> </code><code>"DNAME"</code> <code>VARCHAR2(14),</code>
<code> </code><code>"LOC"</code> <code>VARCHAR2(13)</code>
<code>-- DDL for Table EMP</code>
<code> </code><code>CREATE</code> <code>TABLE</code> <code>"EMP"</code>
<code> </code><code>( </code><code>"EMPNO"</code> <code>NUMBER(4,0),</code>
<code> </code><code>"ENAME"</code> <code>VARCHAR2(10),</code>
<code> </code><code>"MGR"</code> <code>NUMBER(4,0),</code>
<code> </code><code>"HIREDATE"</code> <code>DATE</code><code>,</code>
<code> </code><code>"SAL"</code> <code>NUMBER(7,2),</code>
<code> </code><code>"COMM"</code> <code>NUMBER(7,2),</code>
<code> </code><code>"DEPTNO"</code> <code>NUMBER(2,0)</code>
<code>-- DDL for Table SALGRADE</code>
<code> </code><code>CREATE</code> <code>TABLE</code> <code>"SALGRADE"</code>
<code> </code><code>( </code><code>"GRADE"</code> <code>NUMBER,</code>
<code> </code><code>"LOSAL"</code> <code>NUMBER,</code>
<code> </code><code>"HISAL"</code> <code>NUMBER</code>
<code>-- DDL for Index PK_DEPT</code>
<code> </code><code>CREATE</code> <code>UNIQUE</code> <code>INDEX</code> <code>"PK_DEPT"</code> <code>ON</code> <code>"DEPT"</code> <code>(</code><code>"DEPTNO"</code><code>) ;</code>
<code>-- DDL for Index PK_EMP</code>
<code> </code><code>CREATE</code> <code>UNIQUE</code> <code>INDEX</code> <code>"PK_EMP"</code> <code>ON</code> <code>"EMP"</code> <code>(</code><code>"EMPNO"</code><code>) ;</code>
以上SQL中未給出PK和FK限制的ddl資訊。 如果使用scott使用者登入資料庫,導出自身schema的table,index,constraint定義資訊時:
<code>-- Constraints for Table EMP</code>
<code> </code><code>ALTER</code> <code>TABLE</code> <code>"EMP"</code> <code>ADD</code> <code>CONSTRAINT</code> <code>"PK_EMP"</code> <code>PRIMARY</code> <code>KEY</code> <code>(</code><code>"EMPNO"</code><code>) ENABLE;</code>
<code>-- Constraints for Table DEPT</code>
<code> </code><code>ALTER</code> <code>TABLE</code> <code>"DEPT"</code> <code>ADD</code> <code>CONSTRAINT</code> <code>"PK_DEPT"</code> <code>PRIMARY</code> <code>KEY</code> <code>(</code><code>"DEPTNO"</code><code>) ENABLE;</code>
<code> </code><code>CREATE</code> <code>UNIQUE</code> <code>INDEX</code> <code>"PK_DEPT"</code> <code>ON</code> <code>"DEPT"</code> <code>(</code><code>"DEPTNO"</code><code>) ;</code>
<code>-- Ref Constraints for Table EMP</code>
<code> </code><code>ALTER</code> <code>TABLE</code> <code>"EMP"</code> <code>ADD</code> <code>CONSTRAINT</code> <code>"FK_DEPTNO"</code> <code>FOREIGN</code> <code>KEY</code> <code>(</code><code>"DEPTNO"</code><code>)</code>
<code> </code><code>REFERENCES</code> <code>"DEPT"</code> <code>(</code><code>"DEPTNO"</code><code>) ENABLE;</code>
Oracle SQL developer給出了正确的SQL,包含FK和PK限制。 這個Bug在8月(2010 Aug)被确認将影響此前所有版本的Oracle SQL developer。
本文轉自maclean_007 51CTO部落格,原文連結:http://blog.51cto.com/maclean/1277141