Oracle學習之數據庫對象(表、索引、視圖、缺省值、規則(約束)、觸發器、用戶、存儲過程)

數據庫對象

表、索引、視圖、缺省值、規則(約束)、觸發器、用戶、存儲過程、函數等。

表格

數據庫中的表與我們日常生活中使用的表格類似,它也是由行(Row) 和列(Column)組成的。

創建表

  • 語法(沒加約束):

CREATE TABLE 表名稱 ( 列名稱1 數據類型,
列名2 數據類型,
列名稱3 數據類型,
… ,
列名稱N 數據類型);

  • 注意
命名規則:字母、數字、下劃線(_)組成,不要以數字開頭

查看錶結構

  • 語法

command Windows命令窗口:
DESC 表名;

修改表:增加一列或多列

  • 語法

alter table 表名 add(字段名 數據類型,字段名2 數據類型2);

修改表:修改一列或多列

  • 語法

alter table 表名 modify(字段名 數據類型,字段名2 數據類型2);

增加和修改列是不需要加關鍵字COLUMN,否則會報錯ora-00905

刪除表

  • 語法

drop table 表名;

刪除表:刪除一列

  • 語法

alter table 表名 drop column 字段名;

刪除表:刪除多列

  • 語法

alter table 表名 drop(字段名1,字段名2,````);

刪除一列時要加COLUMN,多列時不用

索引

索引是根據指定的數據庫表列建立起來的順序。它提供了快速訪問數據的途徑,並且可監督表的數據,使其索引所指向的列中的數據不重複。就好比書的目錄一樣,可以通過目錄來直接定位所需內容存在的頁數,大大提高檢索效率。

  • 語法:

CREATE INDEX 索引名稱 ON 表名(column…);

視圖

視圖一個虛擬的表,在數據庫中並不實際存在。視圖是由查詢數據庫表產生的,它限制了用戶能看到和修改的數據。由此可見,視圖可以用來控制用戶對數據的訪問,並能簡化數據的顯示,即通過視圖只顯示那些需要的數據信息。

  • 語法

    CREATE [OR REPLACE]  VIEW view_name
    AS
    SELECT查詢
    [WITH CHECK OPTION]
    [WITH READ ONLY CONSTRAINT]
    
  • 語法解析:

CREATE OR Replace:用於創建和修改視圖
WITH CHECK OPTION:用於創建限制數據訪問的視圖
WITH READ ONLY:用於創建只讀視圖

缺省值(默認值)

當在表中創建列或插入數據時,對沒有指定其具體值的列或列數據項賦予事先設定好的默認值。

  • 語法:

create table 表名(
列名稱1 數據類型 [default 默認值]
);

規則(約束)

規則是對數據庫表中數據信息的限制。它限定的是表的列。

	唯一約束(unique):該列值是不能重複的,但是可以爲null。
    非空(not null):數據不能爲NULL。
    主鍵(primary key):唯一的標識錶行的數據,當定義主鍵約束後,該列不但不能重複而且不能爲NULL。
    檢查(check):檢查值是否滿足某個條件,屬於表對象,必須要有名字
    外鍵(references):主副表間的關聯關係。
    
  • 創建表語法(加約束):

create table 表名(
列名稱1 數據類型 [primary key],
列名稱2 數據類型 [unique],
列名稱3 數據類型 [not null | null],
列名稱4 數據類型 check(條件),
列名稱5 數據類型 [references 表名(列名)]

列名稱N 數據類型 [default 默認值] [等限制]
);

存儲過程

語法:

create proc 存儲過程名
參數1 參數類型
as
declare 輸出參數 輸出參數類型
執行行或者程序塊
執行存儲過程
exec 存儲過程名
存儲過程是爲完成特定的功能而彙集在一起的一組SQL 程序語句,經編譯後存儲在數據庫中的SQL 程序。

觸發器

觸發器由事件來觸發,可以查詢其他表,而且可以包含複雜的SQL語句。主要用於強制服從複雜的業務規則或要求。也可用於強制引用完整性,以便在多個表中添加、更新或刪除行時,保留在表之間定義的關係。

  • 語法:

Create Trigger 觸發器名稱 on 表名
for (操作)(即insert,update,delete)
as
執行行或者程序塊
執行觸發器
在對錶做相應操做時觸發
觸發器是一個用戶定義的SQL事務命令的集合。當對一個表進行插入、更改、刪除時,這組命令就會自動執行。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章