一、表空间

  1、概念:表空间实质上是组织数据文件的一种途径,表空间包含着逻辑对象。一个数据库对应着多个表空间,一个物理文件对应一个表空间。当创建数据库时要创建表空间,并指定数据文件。

  2、分类:(目录表空间、常规表空间、系统临时表空间、用户临时表空间、undo表空间)

  3、表空间的创建(一般会使用到常规表空间、临时表空间,默认表空间是System)、修改、删除

  示例代码如下所示:  

 1 --创建常规表空间
 2 create tablespace 表空间名
 3    datafile 'D:\database\datafiles_1.dbf' size 50M;
 4 --创建临时表空间
 5 create temporary tablespace temp;
 6     tempfile 'D:\database\usertemp_1.dbf' size 50M;
 7 --修改表空间
 8 alert tablesapce 表空间名
 9     add datafile 'D:\database\datafiles_1.dbf' size 10M;--表空间增加10M
10 --设置表空间为默认的表空间
11 alert database default tablesapce 表空间名;
12 --删除表空间(仅删除控制文件中的指针,并没有删除物理文件,需要手动删除)
13 drop tablesapce 表空间名 including contents;--including contents:删除所有的段

 

  4、表空间和数据文件有关的数据字典

  DBA_DATA_FILES:实例中所有数据文件和表空间的信息,DBA_TABLESPACES:表空间的信息,DBA_FREE_SPACE:表空间的空闲空间信息。

二、SQL语言基础

  1、oracle数据类型

  数字数据类型:number(5,2);字符数据类型:char、varchar2(varchar)、long、nchar、nvarchar2;date数据类型;LOB数据类型(clob、blob、bfile)

    2、SQL语言

  DDL:数据定义语言(create、alert、truncate、drop),改变数据库结构。

  DML:数据操纵语言(select、insert、update、delete),用于检索、插入和修改数据库信息。

  DCL:数据控制语言(grant、revoke),为用户提供权限控制命名。

  TCL:事务控制语言(commit、rollback、savepoint)。

三、索引(树状结构)

  1、分类(逻辑设计:单列索引、组合索引、唯一索引、非唯一索引、函数索引,物理:分区索引、为非区索引、B数索引、正向索引、反向索引、位图索引)

  2、创建、修改、合并、删除索引

  示例代码如下所示:

 1 --创建索引语法
 2 create [unique] index 索引名
 3   on 表名(列名1,列名2...)where 条件
 4 --创建唯一性索引(不重复)
 5 create unique index indDepartmenNo on employee(departmenNo);
 6 --创建位图索引(重复性高)
 7 create bitmap index indsex on employee(sex);
 8 --修改索引
 9 alert index indsex rebuild;
10 --合并索引
11 alert index indsex coalesce;
12 --删除索引
13 drop index indsex

四、视图(虚拟表,仅存储定义)

  创建视图

  示例代码如下所示:

 1 --创建视图语法
 2 create [or replace] view [user.]视图名
 3 [column1 [, column2]... ...]
 4 --创建视图view_employee
 6 create view view_employee
 7 as 
 8 select * from employee;
 9 --删除视图
10 drop view view_employee;

 

五、同义词(数据库对象的一个别名)

  创建、使用、删除同义词

  示例代码如下所示:

 1 --创建同义词语法
 2 create [or replace] [public] synonym [user.]synonym_name
 3 for [user.] object_name
 4 --创建私有同义词
 5 create synonym myemp for scott.emp;
 6 --创建公有同义词
 7 create public synonym myemp for scott.emp;
 8 --使用同义词
 9 select * from myemp;
10 --删除同义词
11 drop [public] synonym [user.] synonym_name;
12 drop synonym myemp;

 

六、序列(同sql server中的标识列同义)

  创建、使用、修改、删除同义词

  示例代码如下所示:

 1 --创建序列语法
 2 create sequence [user.] sequence_name
 3     [increment by n]
 4     [start with n]
 5     [maxvalue n|nomaxvalue]
 6     [minvalue n|nominvalue];
 7 --创建序列
 8 create sequence my_num
 9     start with 1
10     increment by 1
11     maxvalue 5000
12     cache 20;   --缓存
13 --使用序列
14 select my_num.currval from dual;    --currval :当前值 ,nextval:下一个值
15 --更改序列语法,不能修改start with参数
16 alert sequence [user.] sequence_name
17      [increment by n]
18      [maxvalue n|nomaxvalue]
19      [minvalue n|nominvalue];
20 --修改序列
21 alert sequence my_num
22     maxvalue 9999
23     cycle;  --循环
24 --删除序列
25 drop sequence [user.] sequence_name;
26 drop sequence my_num;

 

 

  

 

  

 

posted on 2013-12-25 12:52  Flashy_Dream  阅读(376)  评论(0编辑  收藏  举报