oracle中关于表的各种操作

/*关于表的各种操作 20100706 fangyl*/
--重命名表
RENAME EMPLOYEES_OLD  TO EMPLOYEES_OLD_new;

SELECT * FROM EMPLOYEES_OLD_new;

--给表和列添加注释
COMMENT ON TABLE  EMPLOYEES_OLD_new IS '临时测试使用的表';
COMMENT ON COLUMN EMPLOYEES_OLD_new.Emp_Num IS '工号';

--约束
ALTER TABLE EMPLOYEES_OLD_new ADD CONSTRAINT checkemp_num CHECK(Emp_Num<100001);  --check 约束
ALTER TABLE employees_old_new MODIFY (emp_firstname  NOT NULL);  --非空约束   只能使用modify添加非空约束
ALTER TABLE employees_old_new ADD  UNIQUE (emp_num);   --唯一性约束
ALTER TABLE employees_old_new ADD CONSTRAINT pk_emp_num PRIMARY KEY (emp_num);  --主键约束

--外键级联操作关键字:当被参照的数据被删除时,参照该字段的数据也一并被删除(或者置为空)
ALTER  TABLE EMPLOYEES_OLD_new  ADD CONSTRAINT fk_434um FOREIGN KEY (emp_num)
                             REFERENCES dept_temp(staff_id) ON DELETE CASCADE;  --外键  或者 ON DELETE SET NULL

ALTER TABLE EMPLOYEES_OLD_new DISABLE CONSTRAINT checkemp_num;   --禁用约束
ALTER TABLE EMPLOYEES_OLD_new ENABLE CONSTRAINT checkemp_num;    --激活约束

ALTER TABLE EMPLOYEES_OLD_new MODIFY CONSTRAINT checkemp_num DISABLE; --禁用约束
ALTER TABLE EMPLOYEES_OLD_new MODIFY CONSTRAINT checkemp_num ENABLE;  --激活约束

ALTER TABLE EMPLOYEES_OLD_new DROP CONSTRAINT checkemp_num CASCADE; --删除约束

-- 约束数据字典 
user_constraints   Dba_Constraints   all_constraints
SELECT * FROM user_constraints;
--约束对应的字段
User_Cons_Columns  dba_cons_columns  All_Cons_Columns
SELECT * FROM user_cons_columns;


--修改表结构
ALTER TABLE EMPLOYEES_OLD_new RENAME COLUMN emp_lastname TO emp_lastname01; --修改列名
ALTER TABLE EMPLOYEES_OLD_new MODIFY (emp_lastname01 VARCHAR(15));   -- 修改列的大小

ALTER TABLE dept_temp MODIFY (dep_num VARCHAR2(10));  --修改列的属性

 

ALTER TABLE EMPLOYEES_OLD_new SET UNUSED(emp_lastname01) ;   --设置某字段为无效字段
ALTER TABLE EMPLOYEES_OLD_new DROP UNUSED COLUMNS CHECKPOINT; --删除无效字段,使用 checkpoint 节省回滚段使用

ALTER TABLE EMPLOYEES_OLD_new ADD (emp_lastname01 VARCHAR(15));  ---添加一列
ALTER TABLE EMPLOYEES_OLD_new DROP COLUMN emp_lastname01; --删除一列

--建新的表空间
CREATE TABLESPACE tab_fangtest DATAFILE 'F:/app/fangyl/product/11.1.0/db_1/oradata/fangyl/tab_fangy02.dbf' SIZE 10m;

--更改表的表空间
ALTER TABLE EMPLOYEES_OLD_new MOVE TABLESPACE tab_fangtest;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值