UPDATE (SQL Server Compact)

修改 Microsoft SQL Server Compact 資料表中的現有資料。

語法

UPDATE table_name 
   [ WITH ( < table_hint > ) ]
   SET 
   { column_name = { expression | DEFAULT | NULL } } [ ,...n ] 
   [ WHERE < search_condition > ] 
   [ OPTION ( <query_hint> [ ,...n ] ) ]

引數

  • table_name
    要更新的資料表名稱。

  • WITH (table_hint)
    指定目標資料表允許的一個或多個資料表提示。必須使用 WITH 關鍵字及括號。如需允許資料表提示的清單,請參閱<資料表提示 (SQL Server Compact)>。

  • SET
    指定要更新的資料行或變數名稱的清單。

  • column_name
    含有要變更資料的資料行。此 column_name 引數必須存在於指定的資料表中,並且應該在 SET 子句中只指定一次。

  • expression
    傳回單一值的變數、文字值或運算式。運算式傳回的值會取代 column_name 中現有的值。

  • DEFAULT
    指定以此資料行定義的預設值來取代資料行中現有的值。如果資料行沒有任何預設值,並且定義為允許 NULL 值,這也可以用來將資料行變更為 NULL。

  • WHERE
    指定限制要更新資料列的條件。

  • < search_condition >
    指定要更新資料列時必須符合的條件。搜尋條件中可包含的述詞數目並沒有限制。

  • OPTION ( <query_hint> [,…n] )
    指定要使用查詢最佳化工具提示來自訂 SQL Server Compact 處理陳述式的方式。如需詳細資訊,請參閱<查詢提示 (SQL Server Compact)>。

備註

  • 不可更新識別欄位。

  • 若未指定 WHERE 子句,則會更新資料表的所有資料列。

  • 先根據資料表的各個資料列評估 WHERE 子句中的搜尋條件,才會更新資料表的任何資料列。

  • 如果對於資料列的更新違反某個條件約束或規則、違反資料行的 NULL 設定,或是新的值屬於不相容的資料類型,就會取消此陳述式、傳回錯誤,而且不會更新任何記錄。

  • 所有的 nchar 資料行都會在右邊填補到定義的長度。

  • 對於加到 nvarchar 資料行的資料,所有行尾的空白都會移除,但只含有空格的字串除外。這些字串會被截斷,成為一個空字串。

範例

以下範例會找到客戶識別碼為 "VINET" 的公司所下的全部訂單,變更其送貨地址,以此方式更新 Orders 資料表。

UPDATE Orders SET [Ship Address] = '21 rue de l''xylophie' WHERE [Customer ID] = 'VINET'