第 8 章 資料的新增、修改 與刪除
本章重點 8-1 使用 SQL Server Management Studio 編輯資料 8-2 新增記錄─ INSERT 敘述 8-3 簡易查詢─ SELECT 敘述初體驗 8-4 用查詢結果建立新資料表─ SELECT INTO 8-5 更新記錄─ UPDATE 敘述 8-6 刪除記錄─ DELETE 與 RUNCATE TABLE 8-7 輸出更動的資料— OUTPUT 子句
8-1 使用 SQL Server Management Studio 編輯資料 開啟及查詢資料表 在結果窗格編輯資料時的限制 在結果窗格中的編輯技巧
開啟及查詢資料表
開啟及查詢資料表
更改預設的查詢、編輯筆數
更改預設的查詢、編輯筆數
開啟及查詢資料表 查詢前幾筆資料列
開啟及查詢資料表 查詢前百分之幾的資料列
在結果窗格編輯資料時的限制 整個查詢結果的限制 首先您必須確定, 查詢結果是否可以接受編輯。
在結果窗格編輯資料時的限制 欄位的限制 有些資料型別的欄位是不允許在結果窗格中輸入或修改的, 像 timestamp 以及 binary 類型 (包括binary、varbinary、image 三種型別)。 若欄位的值可以自動產生, 請不要費事去更動它。 若輸入任何不符合欄位定義 (包括資料型別、長度、屬性、各項條件約束設定) 的值, 都是會被打回票的。
在結果窗格中的編輯技巧 修改現有記錄內容
在結果窗格中的編輯技巧 若想修改欄位中的幾個字, 而此時卻顯示選取整個欄位值, 可以按一下 鍵, 插入點就會出現了。 若想修改欄位中的幾個字, 而此時卻顯示選取整個欄位值, 可以按一下 鍵, 插入點就會出現了。 在 “允許 NULL” 的欄位中, 若要將值改成 NULL, 請按 + 鍵, 則儲存後, 該欄位會顯示 NULL。 若有其它資料表需參照到您要修改的欄位值, 該欄位值將不允許修改。
在結果窗格中的編輯技巧 修改完畢, 將插入點移到其它筆記錄上(或關閉查詢設計視窗), 便可將剛才所做的變更儲存起來。
在結果窗格中的編輯技巧 新增記錄 將插入點移到查詢結果最底部的空白列上。或者, 按查詢結果底下的移至新資料列鈕, 也可快速到達最底部的空白列。
在結果窗格中的編輯技巧 若要將欄位值設為 NULL (假設該欄位 “允許 NULL” ), 您不需要在該欄位輸入任何資料, 因為只要儲存記錄後, 該欄位便會自動填入 NULL。 若要讓欄位填入預設值 (假設該欄位有設定預設值) , 同樣也不需要在欄位內輸入任何資料, 如此儲存後, 該欄位便會自動填入預設值。
在結果窗格中的編輯技巧 假如某欄位既 “允許 NULL” , 且設有預設值, 則略過該欄位不填, 儲存後, 該欄位會填入預設值;若是要填入 NULL 值, 則您必須在該欄位上按 + 鍵, 強制輸入。 此步驟所做的任何編輯, 同樣可利用 鍵復原。
在結果窗格中的編輯技巧 輸入完畢, 將插入點移到其它記錄上(或關閉結果窗格), 該筆記錄便儲存起來了。
在結果窗格中的編輯技巧 刪除記錄 選取欲刪除的記錄
在結果窗格中的編輯技巧 按是鈕, 選取的記錄就被刪除掉了。
8-2 新增記錄 ─ INSERT 敘述 基本用法 INSERT / SELECT INSERT / EXEC
基本用法
基本用法 INTO:為了增加整個敘述的可讀性。 table_name:要新增記錄的資料表名稱。 column_list:列出預備要輸入值的欄位名稱,欄位名稱之間請用逗號相隔。 data_values:列出要填入欄位中的值,值與值之間須用逗號隔開,可插入單筆或多筆記錄。
基本用法
基本用法
基本用法 如果欄位設定了識別 (IDENTITY) 屬性, 那麼將填入自動編號, 如編號欄。 如果欄位有設定預設值, 則填入預設值, 如數量欄。 如果欄位 “允許NULL” , 則填入 NULL, 如附註欄。 若前幾項都不符合時, 則會顯示錯誤訊息而取消操作, 不輸入任何資料。
手動輸入識別 (IDENTITY) 屬性的欄位值
INSERT / SELECT
INSERT / SELECT
INSERT / SELECT
INSERT / SELECT
INSERT / EXEC
INSERT / EXEC
8-3 簡易查詢 ─ SELECT 敘述初體驗 select_list:列出要顯示的欄位名稱,欄位名稱之間請用逗號相隔。 table_source:欲查詢的資料表名稱。 search_condition:查詢的條件。
簡易查詢 ─ SELECT 敘述初體驗 基本用法 多資料表的查詢 設定資料表及欄位的別名
基本用法
多資料表的查詢
多資料表的查詢
設定資料表及欄位的別名
8-4 用查詢結果建立新資料表─ SELECT INTO
用查詢結果建立新資料表─ SELECT INTO
複製資料表結構
8-5 更新記錄─ UPDATE 敘述 column_name:指定欲變更的欄位名稱。 expression:指定新的欄位值, expression 可以是一個常數、運算式、變數 ... 等。 DEFAULT:使用 DEFUALT,可將 column_name 的欄位值重新設為預設值。 NULL:使用 NULL,可將 column_name 的欄位值重新設為 NULL。
更新記錄─ UPDATE 敘述 基本應用 引用其它資料表的值來更新
基本應用
基本應用
基本應用
引用其它資料表的值來更新
8-6 刪除記錄─ DELETE 與 RUNCATE TABLE TRUNCATE TABLE 敘述
DELETE 敘述
DELETE 敘述
DELETE 敘述
TRUNCATE TABLE 敘述
8-7 輸出更動的資料— OUTPUT 子句
輸出更動的資料— OUTPUT 子句 基本語法 將更動的資料輸出至其他資料表或 table 變數
基本語法 DELETED INSERTED * column_name
基本語法 DELETED INSERTED * column_name
基本語法
基本語法
將更動的資料輸出至其他資料表或table 變數 output_table @table_variable column_list
將更動的資料輸出至其他資料表或table 變數