设为首页 加入收藏

TOP

Oracle常用命令 (二)
2014-11-24 02:21:48 来源: 作者: 【 】 浏览:3
Tags:Oracle 常用 命令
pctfree = (average row size - initial row size) *100 /average row size

   pctused = 100-pctfree- (average row size*100/available data space)

   5. 改变存储块初始大小

   sql> alter table table_name pctfree=30 pctused=50 storage(next 500k

   sql> minextents 2 maxextents 100);

   6. 手动分配数据块

   sql> alter table table_name allocate extent(size 500k datafile 'c:/oracle/data.dbf');

   7. 移动表空间

   sql> alter table employee move tablespace users;

   8. 回收不用的表空间

   sql> alter table table_name deallocate unused [keep integer]

   9. 截断表

   sql> truncate table table_name;

   10. 删除表

   sql> drop table table_name [cascade constraints];

   11. 删除列

   sql> alter table table_name drop column comments cascade constraints checkpoint 1000;

   alter table table_name drop columns continue;

   12. 把列标记为无用

   sql> alter table table_name set unused column comments cascade constraints;

   alter table table_name drop unused columns checkpoint 1000;

   alter table orders drop columns continue checkpoint 1000

   data_dictionary : dba_unused_col_tabs

13. 建一个和a表结构一样的空表

SQL> create table b as select * from a where 1=2;
SQL> create table b(b1,b2,b3) as select a1,a2,a3 from a where 1=2;

14. 查看现有回滚段及其状态

SQL> col segment format a30
SQL> SELECT SEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUS FROM DBA_ROLLBACK_SEGS;


四. 索引

1. 创建基于函数的索引

   sql> create index summit.item_quantity on summit.item(quantity-quantity_shipped);

   2. 创建B-tree索引

   sql> create [unique] index index_name on table_name(column,.. asc/desc) tablespace

   sql> tablespace_name [pctfree integer] [initrans integer] [maxtrans integer]

   sql> [logging | nologging] [nosort] storage(initial 200k next 200k pctincrease 0

   sql> maxextents 50);

   3. 设置index pctfree值

pctfree(index)=(maximum number of rows-initial number of rows)*100/maximum number of rows

   4. 创建反转键索引

   sql> create unique index xay_id on xay(a) reverse pctfree 30 storage(initial 200k

   sql> next 200k pctincrease 0 maxextents 50) tablespace indx;

   5. 创建位图索引

   sql> create bitmap index xay_id on xay(a) pctfree 30 storage( initial 200k next 200k

   sql> pctincrease 0 maxextents 50) tablespace indx;

   6. 改变索引的存储参数

   sql> alter index xay_id storage (next 400k maxextents 100);

   7. 分配/回收索引空间

   sql> alter index xay_id allocate extent(size 200k datafile 'c:/oracle/index.dbf');

   alter index xay_id deallocate unused;


五. 约束

1. 定义约束为immediate/deferred

   sql> alter session set constraint[s] = immediate/deferred/default;

   set constraint[s] constraint_name/all immediate/deferred;

   2. 删除表的时候同时删除约束

sql> drop table table_name cascade constraints

   sql> drop tablespace tablespace_name including contents cascade constraints

   3. 建表的时候创建约束

   sql> create table xay(id number(7) constraint xay_id primary key deferrable

   sql> using index storage(initial 100k next 100k) tablespace indx);

   primary key/unique/references table(column)/check

   4. 使约束失效

   sql> alter table xay enable novalidate constraint xay_id;

   5. 使约束有效

   sql> alter table xay enable validate constraint xay_id;


六. LOAD数据

1. 以insert方式插入数据

   sql> insert /*+append */ into emp nologging

   sql> select * from emp_old;

   2. 以parallel方式直接插入数据

   sql> alter session enable parallel dml;

   sql> insert /*+parallel(emp,2) */ into emp nologging

   sql> select * from emp_old;

   3. 用sql*loader导入

   sql> sqlldr scott/tiger

   sql> control = ulcase6.ctl

首页 上一页 1 2 3 4 5 6 下一页 尾页 2/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇oracle常用命令之tnsping 下一篇设置Oracle 11Gr2 RAC的归档模式

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: