Oracle DDL 语言深化

本文详细介绍了SQL语句的分类,包括数据库查询、定义、操纵和控制等,并深入探讨了级联删除约束、建立视图及表压缩等高级特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SQL按照分类可以分为:
DSL数据库查询(select)
DDL数据库定义(create、alter、drop、rename、truncate)、 --隐式提交
DML数据库操纵(insert、delete、update)、--显式提交
DCL数据库控制(grant、revoke、set role)、 --隐式提交
事务控制(commit、rollback、savepoint、lock table、set constraint、set transaction)、
审计控制(audit、noaudit)
系统控制(alter system)
会话控制(alter session)
其他语句(comment、explain plan、analyze、validate、call)
编程SQL(declare、explain、open、fetch、close、prepare、execute、describe)

级联删除约束
DROP TABLE bookcat CASCADE CONSTRAINTS; --删除表的同时级联删除所有约束(例如外键约束)

级联删除记录(向book表的字段pid设为外键,并级联person表的主键pid,当person表的pid记录被删除,级联删除book表的所有相关记录)
ALTER TABLE book ADD CONSTRAINT person_book_pid_fk FOREIGN KEY (pid) REFERENCES person(pid) ON DELETE CASCADE ;

强制建立视图
CREATE FORCE VIEW; 强制建立视图,不管组成视图的表及字段是否存在,建立视图时会通过,但是使用视图时用到不存在的表格或字段依然会报错。

COMPRESS压缩表格或索引
ALTER TABLE zs_xj_family MOVE COMPRESS;
create table XXX ... compress;
create index t1_ci_1 on t1(col1, col2, col3, col4) compress ;
alter index t1_ci_1 rebuild compress ;
压缩后表的大小是原来的20%~26%。按照官方说法由于表可以存储在更少的数据块中,查询速度比未压缩时会有提高。表压缩的代价是话单入库的时间会比未压缩的表慢20%,同时要多消耗5%左右的CPU。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值