Oracle 序列,表空間
oracle 數據庫將表空間劃分成邏輯區域,形成邏輯結構,一個oracle有一個或多個表空間,一個表空間對應著多個數據庫文件,表空間是oracle恢復數據的最小單元
,容納著很多數據庫實體,聚簇,回退段
表空間作用:
決定數據庫的數據分配
備份和恢復
分布於不同數據設備之間,提高性能
CREATE CLUSTER --建立聚簇
CREATE PROCEDURE --建立過程
CREATE SEQUENCE --建立序列
CREATE TABLE --建表
CREATE TRIGGER --建立觸發器
CREATE TYPE --建立類型
CREATE OPERATOR --創建操作者
CREATE INDEXTYPE --創建索引類型
******序列****
sequence序列號生成器
創建序列需要CREATE SEQUENCE系統權限。序列的創建語法如下:
CREATE SEQUENCE 序列名
[INCREMENT BY n] 1.表示定義步長,則默認為1
[START WITH n] 2.start with 產生的第一個值
[{MAXVALUE/ MINVALUE n| NOMAXVALUE}] 3 定義序列中產生的最大值
[{CYCLE|NOCYCLE}] 表示是否循環
[{CACHE n| NOCACHE}]; 緩沖 定義存放內存的大小 默認為20 nocache 表示不對內存的序列緩存,對序列進行緩存可以改善數據的性能
7) NEXTVAL 返回序列中下一個有效的值,任何用戶都可以引用。
8) CURRVAL 中存放序列的當前值,NEXTVAL 應在 CURRVAL 之前指定 ,二者應同時有效。
對於普通用戶:授予connect, resource權限。
對於DBA管理用戶:授予connect,resource, dba權限。
在oracle中sequence就是所謂的序列號,每次取的時候它會自動增加,一般用在需要按序列號排序的地方。
1、Create Sequence
你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE權限,
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 -- 每次加幾個
START WITH 1 -- 從1開始計數
NOMAXVALUE -- 不設置最大值
NOCYCLE -- 一直累加,不循環
CACHE 10;
權限和角色
可以控制在sql,和特定對象的授權
給用戶授權
grant connect,resource to [username] 給哪個用戶授權
同義詞***********************************************************
同義詞可以分為 公有同義詞,私有同義詞,不占用空間
作用:屏蔽對象的名字及其持有者,為用戶簡化SQL語句
Oracle 序列,表空間