摘要:視頻教程在線輔導面授招生考試大綱指定教材報名時間8.3.2數據定義關系數據庫系統支持三級模式結構,其模式、外模式和內模式中的基本對象有表、視圖和索引。因此SQL的數據定義功能包括定義表、定義視圖和定索引,如表8-4所示。視圖是基于基本表的虛表,索引是依附于基本表的,因此SQL通常不提供修改視圖定義和修改索引
8.3.2 數據定義
關系數據庫系統支持三級模式結構,其模式、外模式和內模式中的基本對象有表、視圖和索引。因此SQL的數據定義功能包括定義表、定義視圖和定索引,如表8-4所示。

視圖是基于基本表的虛表,索引是依附于基本表的,因此SQL通常不提供修改視圖定義和修改索引定義的操作。用戶如果想修改視圖定義或索引定義,只能先將它們刪除掉,然后再重建。
1.定義、刪除與修改基本表
(1)定義基本表
建立數據庫最重要的一步就是定義一些基本表。SQL使用CREATETABLE語句定義基本表,其一般格式如下:
CREATETABLE<表名>(<列名x數據類型>{列級完整性約束條件}
[,<列名x數據類型>[列級完整性約束條件]]…[,<表級完整性約束條件>];
其中,<表名>是所要定義的基本表的名字,它可以由一個或多個屬性〈列〉組成。
建表的同時通常還可以定義與該表有關的完整性約束條件,這些完整性約束條件被存入系統的數據字典中,當用戶操作表中數據時由DBMS自動檢查該操作是否違背這些完整性約束條件。如果完整性約束條件涉及該表的多個屬性列,則必須定義在表級上,否則既可以定義在列級,也可以定義在表級。
(2)修改基本表
隨著應用環境和應用需求的變化,有時需要修改己建立好的基本表,SQL用ALTERTABLE語句修改基本表,其一般格式如下:
ALTERTABLE<表名>
[ADD<新列名><數據類型>[完整性約束]]
[DROP<完整性約束名>
[MODIFY<列名x數據類型>]
其中,<表名>是要修改的基本表,ADD子句用于增加新列和新的完整性約束條件,DROP子句用于刪除指定的完整性約束條件,MODIFY子句用于修改原有的列定義,包括修改列名和數據類型。
(3)刪除基本表
當某個基本表不再需要時,可以使用DROPTABLE語句將其刪除。其一般格式如下:DROPTABLE<表名>
基本表定義一旦刪除,表中的數據、此表上建立的索引和視圖都將自動被刪除掉。因此執行刪除基本表的操作一定要格外小心。
2.建立與刪除索引
建立索引是加快査詢速度的有效手段。用戶可以根據應用環境的需要,在基本表上建立-個或多個索引,以提供多種存取路徑,加快查找速度。
(1)建立索引
在SQL中,建立索引使用CREATEINDEX語句,其一般格式如下:
CREATE[IUNIQUE]INDEX<索引名>
ON<表名>(<列名>[<次序>][,<列名>[<次序>]]...);
其中,<表名>是要建索引的基本表的名字。索引可以建立在該表的一列或多列上,各列名之間用逗號分隔。每個<列名>后面還可以用<次序>指定索引值的排列次序,可選ASC(升序)或DESC(降序),缺省值為ASC。
UNIQUE表明此索引的每一個索引值只對應數據記錄。
(2)刪除索引
索引一經建立,就由系統使用和維護它,不需用戶干預。建立索引是為了減少査詢操作的時間,但如果數據增加刪改頻繁,系統會花費許多時間來維護索引。這時,可以刪除一些不必要的索引。
在SQL中,刪除索引使用DROPINDEX語旬,其一般格式如下:
DROPINDEX<索弓|名>;
刪除索引時,系統會同時從數據字典中刪去有關該索引的描述。
返回目錄:通信工程師互聯網技術數據庫基礎教程匯總
編輯相關推薦:
通信工程師備考資料免費領取
去領取
專注在線職業教育25年