emp 表
列名 | 类型 | 可为空 | 默认值 |
EMPNO | NUMBER(4) | ||
ENAME | VARCHAR2(10) | Y | 'YJG' |
JOB | VARCHAR2(9) | Y | |
MGR | NUMBER(4) | Y | |
HIREDATE | DATE | Y | |
SAL | NUMBER(7,2) | Y | |
COMM | NUMBER(7,2) | Y | |
DEPTNO | NUMBER(2) | Y |
键值情况
PK_EMP | Primary | EMPNO | Y | N | N | 2013-4-25 9:22 | |||
FK_DEPTNO | Foreign | DEPTNO | Y | DEPT | DEPTNO | No action | N | N | 2013-4-25 9:22 |
检查约束情况
EMP_SAL | sal>100 | Y | N | N | 2013-4-25 9:25 |
索引情况
SCOTT | EMP_ENAME | Normal | ENAME | N | N | tablespace users pctfree 10 initrans 2 maxtrans 255 storage ( initial 64k minextents 1 maxextents unlimited ) | |||||||||||
SCOTT | PK_EMP | Unique | EMPNO | N | N | tablespace users pctfree 10 initrans 2 maxtrans 255 storage ( initial 64k minextents 1 maxextents unlimited ) |
--用 create table ...as select ....
CREATE TABLE emp_copy
AS
SELECT * from emp;
emp_copy 表
EMPNO | NUMBER(4) | Y |
ENAME | VARCHAR2(10) | Y |
JOB | VARCHAR2(9) | Y |
MGR | NUMBER(4) | Y |
HIREDATE | DATE | Y |
SAL | NUMBER(7,2) | Y |
COMM | NUMBER(7,2) | Y |
DEPTNO | NUMBER(2) | Y |
创建好后,除了内容一样之外,所有约束、键值、索引、默认值均没有了;
表 emp 是与上一样的结构和键值,dept 的主键deptno在emp里作为主键;那么执行
drop table dept casecade constraints; 命令后表dept被删掉;同时emp上的外键被移除;
如果用 flashback table dept to before drop ;闪回dept 表的话,那么dept 上的主键约束以及索引都能闪回,只是名字有系统自动生成;
并且 emp不会有任何改动;
如果 要加上原来的外键那么需要执行ALTER TABLE emp ADD CONSTRAINTS fk_deptno FOREIGN KEY(deptno) REFERENCES dept(deptno);