手动回收表的存储方式:

SQL> alter table aux_emp deallocate unused; //回收所有未使用的存储空间
表已更改。

 回收aux_emp的存储空间,保留50K未使用的存储空间

SQL> alter table aux_emp allocate extent(size 100K);

表已更改。

SQL> alter table aux_emp deallocate unused keep 50k;

表已更改。

  

改变表的读写模式

Oracle在11g之前的版本中实现只读表的方法是通过授权间接实现的,影响面很大。使用文中介绍的只读表(read-only table)技术我们就掌握了细粒度控制表行为的方法。

重命名表:

将aux_emp重新命名为aux_employee

SQL> rename aux_emp to aux_employee;

表已重命名。

SQL> alter table aux_employee rename to aux_emp;

表已更改。

  

维护表

1.为表和列添加注释

语法为 comment on table table is

comment on column table.column is

为aux_emp表和annual_sal列添加注释

SQL> comment on table aux_emp is '辅助员工信息表';

注释已创建。
SQL> comment on column aux_emp.annual_sal is '员工年工资' ; 注释已创建。

  2.删减表

Oracle 数据库中,删减表有一下3中方法:

(1)使用Delete

(2)使用drop删除表后在重建表

(3)使用truncate删除表中全部数据

truncate语句可以快速、高效的删除表中的所有记录。truncate 是DDL语句,执行后马上提交,不会产生任何重做日志、回退信息,因此truncate操作语句不能回滚。

truncate table aux_emp 说明默认选项,被删减表中只会保留由参数Minentents指定的区的最小个数

truncate table aux_emp drop all storage; 删除数据段

truncate table aux_emp reuse storage; 被删减表中的所有存储空间都被回收。

3.删除表

如果要删除的表中包含被其他外键引用的主键列或唯一性约束列,并且希望在删除该表的同时删除其他表中相关的外键约束。需要使用cascade constraints字句。

drop table departments cascade constrains;

在删除一个表时,oracle将进行的操作

删除表中的所有记录

删除数据字典中该表的定义

删除与该表相关的所有索引和触发器。

依赖于该表的数据库对象处于invalid状态

为该表定义的同义词不会被删除,但是使用时会报错。

为该表定义的同义词不会被删除,但是使用时将返回错误。

如果要回收该表的存储空间,可以使用purge子句

drop table aux_emp purge;

4.分析表

1.使用DBMS_STATS包手机表统计信息。

SQL> begin
2 dbms_stats.gather_table_stats('ehr','employees');
3 end;
4 / PL/SQL 过程已成功完成。

  可以使用analyze语句清楚数据字典中表的统计信息

SQL> analyze table employees delete statistics;

表已分析。

  (2)验证表的存储结构

通过对表存储结构进行完整性验证,用户可以提前知道表中是否存在损坏的数据块。

analyze table employees validate structure;

SQL> analyze table employees validate structure;

表已分析。

SQL> analyze table employees validate structure cascade;

表已分析。

SQL> analyze table employees validate structure cascade fast;

表已分析。

Oracle表与约束关系的更多相关文章

  1. Oracle表级约束和列级约束

    Oracle表级约束和列级约束 1. 表级定义约束 指的是在定义完一个表所有列之后,再去定义所有相关的约束. 注意:not null 约束只能在列级上定义. 2. 列级定义约束 指的是在定义一个表的每 ...

  2. Oracle—表、约束、索引、表空间、分区、序列、统计信息

    表.约束.索引.表空间.分区.序列.统计信息 一.表及其操作 1.创建表 create table 表名 ( 字段名1 字段类型 默认值 是否为空 , 字段名2 字段类型 默认值 是否为空, 字段名3 ...

  3. Oracle表的约束

    表的约束定义:表的约束是 ORACLE 数据库中应用在表数据上的一系列强制性规则 按照约束用途分类: PRIMARY KEY:主键约束 FOREIGN KEY:外键约束 CHECK:检查约束 UNIQ ...

  4. Oracle 表管理 约束 索引

    表的约束与完整性: 1.实体完整性 主键唯一性 2.域完整性 不能向number中插入varchar 3.参照完整性 外键 以别的表的字段作为外键,再插入该表时所插入外键的值必须在被参照表中该字段有那 ...

  5. Oracle笔记之约束

    约束用于保证数据库中某些数据的完整性,给某一列添加一个约束可以保证不满足约束的数据是绝对不会被接受的. 约束主要有那么五种类型:非空约束.唯一约束.主键约束.外键约束.校验约束. 使用如下命令检索某个 ...

  6. Oracle day05 建表_约束

    表的创建 标准的建表语法 : CREATE TABLE [schema.] table (column datatype [DEFAULT expr], ... ); 使用子查询创建表的语法 CREA ...

  7. oracle之二表和表空间的关系

    表和表空间的关系 建一个使用缺省值的表空间SQL> create tablespace a datafile '/u01/data/urpdb/a01.dbf' size 10m; 利用orac ...

  8. Oracle表名、列名、约束名的长度限制

    Oracle数据库版本11.2.0.1.0 Oracle表名.列名.约束名的长度限制 1.查询用户所有的表 select * from USER_TABLES; 2.查询用户所有表的列 select ...

  9. oracle 表迁移方法 (二) 约束不失效

    DB:11.2.0.3.0 在oracle 表迁移方法 (一)中,只是move了一张普通的表,如果表的字段带有主键约束呢 ? [oracle@db01 ~]$ sqlplus / as sysdba ...

随机推荐

  1. iOS 后台定位审核被拒How to clarify the purpose of its use in the locatio

    4.5 - Apps using background location services must provide a reason that clarifies the purpose of th ...

  2. 百度UEditor 用require 引入 Thinkphp5 ,图片上传问题

    用require引入,用了10分钟:上传图片,用了一个早上(吐血一地.....) 重点:require引入成功后,在需要引用UEditor的文件开头加入(ue的文件夹路径) window.UEDITO ...

  3. 让footer始终位于页面的最底部

    http://www.cnblogs.com/wudingfeng/archive/2012/06/29/2569997.html html代码: <div class="contai ...

  4. day10上节内容补充和初始函数

    1.上节内容补充 文件的删除和修改: #文件的删除和修改 #文件中全部都要修改 # with open('歌词',encoding='utf-8') as f1,open('歌词.bak','w',e ...

  5. Linux之(Git)服务之windows配置

    设置你自己的昵称与email设置本地机器默认commit的昵称与Email. 请使用有意义的名字与email. git config --global user.name "syavingc ...

  6. 如何使用NSOperations和NSOperationQueues

    原文地址: http://www.raywenderlich.com/19788/how-to-use-nsoperations-and-nsoperationqueues 本文由 大侠自来也(泰然教 ...

  7. 《从零开始学Swift》学习笔记(Day 14)——字符串的插入、删除和替换

    原创文章,欢迎转载.转载请注明:关东升的博客 对应可变字符串可以插入.删除和替换,String提供了几个方法可以帮助实现这些操作.这些方法如下: splice(_:atIndex:).在索引位置插入字 ...

  8. :eq()中的参数详解——需要注意

    :eq()的括号中的参数如果是非负数则在DOM对象中按从上到下的顺序查找指定的元素,但是,如果是是负数,则在DOM中从下向上查找指定元素. 如下实例: 如果 $("#divTag div:e ...

  9. Oracle 逻辑体系

    Oracle 逻辑体系 主题 Oracle 逻辑体系 参考资料   Oracle 逻辑体系   表空间.模式.用户.段.区.块 Oracle中的数据逻辑上存储于表空间,物理上则存储于属于表空间tabl ...

  10. 比较运算符compareTo()、equals()、==之间的区别

    前言 首先再次强调hashcode (==)和equals的真正含义(我记得以前有人会说,equals是判断对象内容,hashcode是判断是否相等之类): equals:是否同一个对象实例.注意,是 ...