官术网_书友最值得收藏!

3.2 界面方式創(chuàng)建表結(jié)構(gòu)

數(shù)據(jù)庫創(chuàng)建后,首先創(chuàng)建表結(jié)構(gòu);已經(jīng)創(chuàng)建的表結(jié)構(gòu)可以修改;不再使用的表可以刪除。

3.2.1 創(chuàng)建表結(jié)構(gòu)

例如,通過“對象資源管理器”創(chuàng)建表xsb,步驟如下。

(1)啟動“SSMS”,在“對象資源管理器”中展開“數(shù)據(jù)庫”,右鍵單擊“xscj”數(shù)據(jù)庫菜單下的“表”選項,在彈出的快捷菜單中選擇“新建表”菜單項,系統(tǒng)打開“表設(shè)計器”窗口。

在右邊表“屬性”頁中顯示數(shù)據(jù)庫名稱為“xscj”,用戶修改(表名稱)為“xsb”。

(2)在“表設(shè)計器”窗口中,根據(jù)附錄已經(jīng)設(shè)計好的xsb的表結(jié)構(gòu)分別輸入或選擇各列的名稱、數(shù)據(jù)類型、是否允許為空值等屬性。

刪除“學(xué)號”和“姓名”字段“允許Null值”,使其不能為空。

(3)根據(jù)需要,可以在“列屬性”選項卡中填入相應(yīng)內(nèi)容。在“專業(yè)”字段的“默認(rèn)值或綁定”中輸入“計算機”;相應(yīng)的性別字段“默認(rèn)值或綁定”設(shè)置為1;在總學(xué)分字段“默認(rèn)值或綁定”設(shè)置為0。

在“說明”項中分別填寫有關(guān)字段的說明信息。

(4)在“學(xué)號”列上單擊鼠標(biāo)右鍵,選擇“設(shè)置主鍵”菜單項,選擇“設(shè)為主鍵”選項,該字段前就會顯示小鑰匙圖標(biāo)。

學(xué)生情況表(xsb)設(shè)計后的結(jié)果如圖3.1所示,單擊“49996-00-45-2”保存圖標(biāo)保存設(shè)計表結(jié)構(gòu)。

圖3.1 “表設(shè)計器”窗口

使用同樣的方法創(chuàng)建課程表,表格名稱為kcb;創(chuàng)建成績表,名稱為cjb。

說明

在創(chuàng)建表時,如果主鍵由兩個或兩個以上的列組成(例如,課程表的主鍵為學(xué)號列和課程號列),在設(shè)置主鍵時,則需要在按住“Ctrl”鍵的同時選擇多個列,然后右鍵單擊選擇“設(shè)置主鍵”菜單項,將多個列設(shè)置為表的主鍵。

3.2.2 修改表結(jié)構(gòu)

在創(chuàng)建了一個表之后,使用過程中可能需要對表結(jié)構(gòu)進(jìn)行修改。默認(rèn)情況下,SQL Server用戶不能通過界面方式修改表的結(jié)構(gòu)。而需要先刪除原來的表,再重新創(chuàng)建新表。如果需要通過界面方式修改表,在“SSMS”的面板中單擊“工具”主菜單,選擇“選項”子菜單,在出現(xiàn)的“選項”對話框中選擇“設(shè)計器”,刪去“阻止保存要求重新創(chuàng)建表的更改”復(fù)選框前的勾選。

1. 更改表名

在“對象資源管理器”中選擇需要更名的表,單擊鼠標(biāo)右鍵,在彈出的快捷菜單上選擇“重命名”菜單項,輸入新的表名后確定。

注意

SQL Server雖然允許改變一個表的名字,但當(dāng)表名改變后,與此相關(guān)的某些對象(如視圖),以及通過表名與表相關(guān)的存儲過程將無效。

2. 修改表結(jié)構(gòu)

修改表結(jié)構(gòu)包括增加列、刪除列、修改已有列的屬性(列名、數(shù)據(jù)類型、是否為空值等)。

在“對象資源管理器”中展開“數(shù)據(jù)庫”,在選擇的數(shù)據(jù)庫中選擇修改表,單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇“設(shè)計”菜單項,打開“表設(shè)計器”窗口。系統(tǒng)列出已經(jīng)存在的表結(jié)構(gòu),用戶就像界面設(shè)計表結(jié)構(gòu)一樣修改表結(jié)構(gòu)。

如果要在某列之前加入新列,則可以右鍵單擊該列,選擇“插入列”,在空白行中填寫列信息即可。如果要刪除某列,則可以右鍵單擊該列,選擇“刪除列”。修改完畢后,關(guān)閉該窗口,此時將彈出一個“保存更改”對話框,單擊“是”按鈕,保存修改后的表。

注意

在SQL Server中,被刪除的列是不可恢復(fù)的,所以在刪除某一列之前需要慎重考慮。并且,在刪除一個列以前,必須保證基于該列的所有索引和約束都已刪除。

改變列的數(shù)據(jù)類型時,要求滿足下列條件:

(1)原數(shù)據(jù)類型必須能夠轉(zhuǎn)換為新數(shù)據(jù)類型;

(2)新數(shù)據(jù)類型不能為timestamp類型;

(3)如果被修改列屬性中有“標(biāo)識規(guī)范”屬性,則新數(shù)據(jù)類型必須是有效的“標(biāo)識規(guī)范”數(shù)據(jù)類型。

注意

表中尚未有記錄值時,可以修改表結(jié)構(gòu),如更改列名、列的數(shù)據(jù)類型、長度和是否允許空值等屬性;但當(dāng)表中有了記錄后,建議不要輕易改變表結(jié)構(gòu),特別不要改變數(shù)據(jù)類型,以免產(chǎn)生錯誤。

在修改列的數(shù)據(jù)類型時,如果列中存在列值,可能會彈出警告框,要確認(rèn)修改單擊“是”按鈕,但是此操作可能會導(dǎo)致一些數(shù)據(jù)永久丟失,請謹(jǐn)慎使用。

另外,具有某些特性(具體參考有關(guān)文檔)的列不能修改。

3.2.3 刪除表

在“對象資源管理器”中展開“數(shù)據(jù)庫”→選擇數(shù)據(jù)庫→選擇表,單擊鼠標(biāo)右鍵,在彈出的快捷菜單上選擇“刪除”菜單項。系統(tǒng)彈出“刪除對象”窗口。單擊“確定”按鈕即可刪除指定表。

注意

(1)刪除一個表時,該表的定義、表中的所有數(shù)據(jù),以及表的索引、觸發(fā)器、約束等均被刪除。

(2)不能刪除系統(tǒng)表和外鍵約束所參照的表。

主站蜘蛛池模板: 黄平县| 虹口区| 凭祥市| 万载县| 新源县| 阜南县| 郓城县| 宜良县| 江油市| 台北市| 洪洞县| 五河县| 海门市| 崇明县| 清苑县| 深州市| 门源| 连南| 伽师县| 中卫市| 冷水江市| 晋中市| 泽普县| 卓资县| 志丹县| 永州市| 芜湖市| 云龙县| 大悟县| 手游| 会同县| 达日县| 孟州市| 临夏市| 宜兴市| 镇坪县| 桐庐县| 宜宾市| 城口县| 瓮安县| 广河县|