1. 程式人生 > >7)-MySQL更新表數據

7)-MySQL更新表數據

郵件 查詢語句 upd emp 說明 att pan 存儲 延遲

1. MySQL UPDATE語句簡介


我們使用update語句來更新表中的現有數據。也可以使用update語句來更改表中單個行,一組行或所有行的列值。

下面說明了mysql update語句的語法: update [low_priority] [ignore] table_name set column_name1 = expr1, column_name2 = expr2, ... where condition; 在上面update語句中: 首先,在update關鍵字後面指定要更新數據的表名。 其次,set子句指定要修改的列和新值。要更新多個列,請使用以逗號分隔的列表。以字面值,表達式或子查詢的形式在每列的賦值中來提供要設置的值。
第三,使用where子句中的條件指定要更新的行。where子句是可選的。 如果省略where子句,則update語句將更新表中的所有行。 請註意,where子句非常重要,所以不應該忘記指定更新的條件。 有時,您可能只想改變一行; 但是,可能會忘記寫上where子句,導致意外更新表中的所有行。 mysql在update語句中支持兩個修飾符。 low_priority修飾符指示update語句延遲更新,直到沒有從表中讀取數據的連接。 low_priority對僅使用表級鎖定的存儲引擎(例如myisam,merge,memory)生效。 即使發生錯誤,ignore修飾符也可以使update語句繼續更新行。導致錯誤(如重復鍵沖突)的行不會更新。

2. MySQL UPDATE示例


我們使用mysql示例數據庫(yiibaidb)中的一些表來練習使用update語句。 2.1 mysql update一個單列示例 在這個例子中,我們將把 mary patterson 的電子郵件更新為新的電子郵件[email protected]。 首先,為了確保更新電子郵件成功,使用以下select語句從employees表查詢mary的電子郵件: select firstname, lastname, email from employees where employeenumber = 1056; 執行上面的查詢語句,得到以下結果 - +-----------+-----------+----------------------+ | firstname | lastname | email | +-----------+-----------+----------------------+ | Mary | Patterson | [email protected]
| +-----------+-----------+----------------------+ 1 row in set 第二步,使用update語句將mary的電子郵件更新為新的電子郵件:[email protected],如下查詢所示: update employees set email = ‘[email protected] where employeenumber = 1056; 因為上面語句中,只想更新一行,所以使用WHERE子句來指定更新的是員工編號1056的行。SET子句將電子郵件列的值設置為新的電子郵件。

7)-MySQL更新表數據