1、表空间sql
一、概念:表空间实质上是组织数据文件的一种途径,表空间包含着逻辑对象。一个数据库对应着多个表空间,一个物理文件对应一个表空间。当建立数据库时要建立表空间,并指定数据文件。数据库
二、分类:(目录表空间、常规表空间、系统临时表空间、用户临时表空间、undo表空间)缓存
三、表空间的建立(通常会使用到常规表空间、临时表空间,默认表空间是System)、修改、删除oracle
示例代码以下所示: 函数
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:删除全部的段
四、表空间和数据文件有关的数据字典ui
DBA_DATA_FILES:实例中全部数据文件和表空间的信息,DBA_TABLESPACES:表空间的信息,DBA_FREE_SPACE:表空间的空闲空间信息。spa
2、SQL语言基础设计
一、oracle数据类型指针
数字数据类型:number(5,2);字符数据类型:char、varchar2(varchar)、long、nchar、nvarchar2;date数据类型;LOB数据类型(clob、blob、bfile)code
二、SQL语言
DDL:数据定义语言(create、alert、truncate、drop),改变数据库结构。
DML:数据操纵语言(select、insert、update、delete),用于检索、插入和修改数据库信息。
DCL:数据控制语言(grant、revoke),为用户提供权限控制命名。
TCL:事务控制语言(commit、rollback、savepoint)。
3、索引(树状结构)
一、分类(逻辑设计:单列索引、组合索引、惟一索引、非惟一索引、函数索引,物理:分区索引、为非区索引、B数索引、正向索引、反向索引、位图索引)
二、建立、修改、合并、删除索引
示例代码以下所示:
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
4、视图(虚拟表,仅存储定义)
建立视图
示例代码以下所示:
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;
5、同义词(数据库对象的一个别名)
建立、使用、删除同义词
示例代码以下所示:
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;
6、序列(同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;