[SQL]修改和刪除基本表


修改基本表

SQL語言用alter table語句修改基本表,其一般格式如下:

alter table <表名>
	add <列名> <數據類型> [<列級完整性約束>] |
	drop [constraint] <完整性約束名> |
	drop column <列名> |
	alter column <列名> <數據類型>

說明:

  1. <表名>是要更改的表的名字
  2. add字句用於增加新列以及新的完整性約束條件。新增的列不能為not null約束,因為新增加的列一律為空值。
  3. drop constraint字句用於刪除完整性約束條件。
  4. drop column字句用於刪除原有的列。當在基本表中刪除某一個列時,所有引用該列的視圖和約束也一起自動被刪除。有的系統規定若刪除某一個列時,只有當沒有視圖和約束引用該列時才能刪除,否則拒絕刪除。
  5. alter column字句用於更改原有列的類型和寬度。有的系統不允許對列名和數據類型進行修改,以免原有基本表中的數據丟失。

例如:

  1. 向圖書表中增加“出版年份”列,其數據類型為日期型:

    alter table 圖書 add 出版年份 date;
    
  2. 向借閱表增加“借閱日期<還書日期”的約束條件:

    alter table 借閱 add constraint C_JY check (借閱日期<還書日期);
    

    或:

    alter table 借閱 add check (借閱日期<還書日期);
    
  3. 刪除圖書表中圖書名稱取唯一值的約束

    alter table 圖書 drop constraint unique(圖書名稱);
    

    或:

    alter table 圖書 drop unique(圖書名稱);
    
  4. 刪除圖書表中“出版年份”列:

    alter table 圖書 drop column 出版年份;
    
  5. 將圖書表中單價的數據類型改為整形:

    alter table 圖書 alter column 單價 int;
    

刪除基本表

drop table <表名>

基本表一旦被刪除,表中的數據、此表上建立的索引和視圖都將自動刪除。

有的系統刪除基本表后相關的視圖定義仍然存在,但是當用戶引用這些視圖時會報錯。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM