Oracle小技巧

来源:互联网 发布:java程序员面试题目 编辑:程序博客网 时间:2024/05/22 14:30

一、增加表空间的方法

        1.找到数据库里面相应的表空间的相应dbf文件,比如表空间名字叫tablespace,相应的dbf文件为tablespace.dbf,tablespace.dbf文件路径为

          'D:\oracle\product\10.2.0\oradata\ORCL\tablespace.db '。

        2.以sys用户登录数据库。

        3.登录数据库之后执行命令:
                                                      alter tablespace tablespace
                                                      add datafile 'D:\oracle\product\10.2.0\oradata\ORCL\tablespace1.dbf' size 2000M; 就OK了!

        上面命令的意思就是新建一个大小为2G的dbf文件给tablespace使用,说白了就是将表空间tablespace的大小增加2G。

二、修改表分区

 分区提供以下优点:

   (1)由于将数据分散到各个分区中,减少了数据损坏的可能性;

   (2)可以对单独的分区进行备份和恢复;

   (3)可以将分区映射到不同的物理磁盘上,来分散IO

   (4)提高可管理性、可用性和性能。

 Oracle 10g提供了以下几种分区类型:

   (1)范围分区(range);

   (2)哈希分区(hash);

   (3)列表分区(list);

   (4)范围-哈希复合分区(range-hash);

   (5)范围-列表复合分区(range-list)。


1)分区表和索引的信息如下:

create table minetable

 (

 id varchar2(15 byte) not null,

 areacode varchar2(4 byte)

 )

 partition by list (areacode)

 (

 partition t_list556 values ('556') tablespace icd_service,

 partition p_other values (default)tablespace icd_service

 );

(2)删除default分区

 alter table minetable drop partition p_other;

(3)添加新分区

 alter table minetable add partition t_list551 values('551') tablespace icd_service;

(4)移动分区

 alter table minetable move partition P_OTHER tablespace system;

 alter table minetable move partition P_OTHER tablespace icd_service;

三、创建序列

CREATE SEQUENCE sequence  //创建序列名称

       [INCREMENT BY n]  //递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1

       [START WITH n]    //开始的值,递增默认是minvalue 递减是maxvalue

       [{MAXVALUE n | NOMAXVALUE}] //最大值

       [{MINVALUE n | NOMINVALUE}] //最小值

       [{CYCLE | NOCYCLE}] //循环/不循环

       [{CACHE n | NOCACHE}];//分配并存入到内存中

 

  NEXTVAL 返回序列中下一个有效的值,任何用户都可以引用

  CURRVAL 中存放序列的当前值

  NEXTVAL 应在 CURRVAL 之前指定 ,二者应同时有效


四、创建索引

CREATE [UNIQUE] INDEX [schema.] index
      ON [schema.] table (column [ASC | DESC], column [ASC | DESC]...)
      [CLUSTER schema.cluster]
      [INITRANS n]
      [MAXTRANS n]
      [PCTFREE  n]
      [STORAGE storage]
      [TABLESPACE tablespace]
      [NO SORT]

关键字说明:

  • UNIQUE: 该参数用来指明所创建的索引为唯一索引。
  • CLUSTER: 该参数为可选参数,用来指定一个聚簇(Hash cluster 不能创建索引)。
  • INITRANS, MAXTRANS: 为可选参数,指定初始和最大的事务入口数。
  • TABLESPACE: 索引的存储表空间。
  • STORAGE: 存储参数。
  • PCTFREE: 索引数据块空闲的百分比。
  • NO SORT: 不排序(存储时就按照升序进行排序,所以这里指出不再排序)。




1 0