使用SQL事務管理器創建新表
你可以使用前面幾節所講的方法創建新表。但是,使用事務管理器創建新表會更容易。這一節介紹如何使用這個程序創建新表。
從任務欄的SQL Sever程序組中選擇SQL EnterPRise Manager,啟動該程序,你會看到如圖10.4所示的窗口。浏覽服務管理器窗口中的樹形結構,選擇名為Database的文件夾。打開文件夾Database後,選擇你在第三章中所建立的數據庫。
注意:
如果你還沒有創建自己的數據庫,回到第三章創建它。你決不要向master,tempdb或任何其它系統數據庫中添加數據。
在選擇了數據庫之後,你會看到一個名為Group/users的文件夾和一個名為objects的文件夾。打開文件夾objects,你會看到許多文件夾,其中一個名為Tables。用右鍵單擊文件夾Tables並選擇New table,就會出現如圖10.5所示的窗口。
你可以使用Manager Tables窗口來創建一個新表。Manager Tables窗口有7個列:Key,Column,Name,Datatype,Size,Nulls和Default。Manager Tables窗口中的每一行標明表中一個字段的信息。
圖10.4
10.5
要建立一個新表,你至少要輸入一行信息。在名為Column Name的列下面鍵入mycolumn。下一步,選擇Datatype列,並從下拉列表中選擇CHAR。當你在這兩個列中輸入信息後,窗口將是如圖10.6所示的樣子。
圖10.6
你已經建立了一個只有一個字段的簡單的表。單擊保存按扭保存這個新表。當要求你輸入新表的名字時,輸入mytable並單擊OK。現在這個表已經保存到了你的數據庫中。
如果你打開服務管理器窗口中的文件夾Tables,你會看到你所建立的新表被列出。你可以雙擊該表的圖表來編輯它,這時Manager Tables窗口會重新出現,你可以增加新的字段並重新保存。
用SQL事務管理器可以做的工作,你都可以用SQL語句來實現。但是,事務管理器使得建表過程變得更加簡單。
向表中添加數據
下一章將討論如何使用SQL向一個表中插入數據。但是,如果你需要向一個表中添加許多條記錄,使用SQL語句輸入數據是很不方便的。幸運的是,Microsoft SQL Sever帶有一個稱為Microsoft Query 的客戶端應用程序,這個程序使得向表中添加數據變得容易了。
啟動位於任務欄SQL Sever程序組中的Microsoft Query程序。從窗口頂部的菜單中選擇File|New Query。這時會顯示一個Select Data Source對話框(見圖10.7)。選擇你的數據源名字並單擊Use。
圖10。7
輸入你的登錄帳號和密碼後,程序要求你選擇一個表和一個數據庫。選擇你在上一節中所建立的表(mytable ),單擊按鈕Add,然後單擊按鈕Close關閉該對話框。
在窗口的左上角會出現一個對話框,框中是取自表mytable的一列字段名。你可以雙擊任何一個字段,把它添加到主窗口中。如果你雙擊星號(*)字符,所有的字段都會被添加到主窗口中。
如果你的表中有記錄,它們現在已經出現在主窗口的字段標題下面了。但是,因為你剛剛建立了這個表,表還是空的。要添加新記錄,選擇Records|Allow Editing,主窗口中就會出現一條新記錄。輸入一行數據完成這個記錄,就向表中添加了一條新記錄。
圖10。8
當你轉到下一條新記錄時,你向上一條記錄中輸入的值會自動被保存。如果你需要,你可以用Microsoft Query 向表中輸入幾百條記錄。
刪除和修改表
你應該在建立表之前仔細設計它們,因為你在改變一個已經存在的表時會受到很大的限制。例如,一旦已經建立了一個表,你就不能刪除表中的字段或者改變字段的數據類型。在這種情況你所能做的是刪除這個表,然後重頭開始(參見第十一章“中級SQL”中的“使用SQL創建記錄和表”一節)。
要刪除一個表,你可以使用SQL語句DROP TABLE。例如,又從數據庫中徹底刪除表mytable,你要使用如下的語句:
DROP TABLE mytable
警告:
使用DROP TABLE命令時一定要小心。一旦一個表被刪除之後,你將無法恢復它。
當你建設一個站點時,你很可能需要向數據庫中輸入測試數據。而當你准備向世界提供你的網點時,你會想清空表中的這些測試信息。如果你想清除表中的所有數據但不刪除這個表,你可以使用TRUNCATE TABLE語句。例如,下面的這個SQL語句從表mytable中刪除所有數據:
TRUNCATE TABLE mytable
雖然你不能刪除和修改已經存在的字段,但你可以增加新字段。最容易的實現方法是使用SQL事務管理器中的Manager Tables窗口。你也可以使用SQL語句ALTER TABLE。下面是一個如何使用這種語句的例子:
ALTER TABLE mytable ADD mynewcolumn INT NULL
這個語句向表mytable中增加了一個新字段mynewcolumn。當你增加新字段時,你必須允許它接受空值,因為表中原來可能已經有了許多記錄。
總結
這一章向你介紹了SQL。使用SQL,你可以操作Microsoft SQL Sever數據庫。你已經學會了使用SELECT語句從數據庫中取出數據,你還學會了怎樣使用CREATE TABLE語句和SQL事務管理器來創建新表。最後,你學會了如何指明一系列重要的字段屬性。
下一章將介紹如何使用索引來增強SQL查詢的操作。還將通過許多其它的SQL語句和函數,使你的SQL知識得到進一步擴充。