mysql update語句簡介
我們使用update語句來更新表中的現有資料。也可以使用update語句來更改表中單個行,一組行或所有行的列值。
下面說明了mysql update語句的語法:
update [low_priority] [ignore] table_name
setcolumn_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語句繼續更新行。導致錯誤(如重複鍵衝突)的行不會更新。
mysql update示例
mysql update乙個單列示例********************====
update employees
setemail = 'mary.new@yiibai.com'
where
employeenumber = 1056;
mysql update多列 ********************====
update employees
setlastname = 'hill',
email = 'mary.hill@yiibai.com'
where
employeenumber = 1056;
使用select語句的mysql update示例********************====
update customers
setsalesrepemployeenumber = (select
employeenumber
from
employees
where
jobtitle = 'sales rep'
limit 1)
where
salesrepemployeenumber is null;
mysql delete語句介紹
要從表中刪除資料,請使用mysql delete語句。下面說明了delete語句的語法:
delete from table_name
where condition;
在上面查詢語句中 -首先,指定刪除資料的表(table_name)。
其次,使用條件來指定要在where子句中刪除的行記錄。如果行匹配條件,這些行記錄將被刪除。請注意,where子句是可選的。如果省略where子句,delete語句將刪除表中的所有行。
除了從表中刪除資料外,delete語句返回刪除的行數。
要使用單個delete語句從多個表中刪除資料,請閱讀下乙個教程中將介紹的delete join語句。
要刪除表中的所有行,而不需要知道刪除了多少行,那麼應該使用truncate table語句來獲得更好的執行效能。
對於具有外來鍵約束的表,當從父表中刪除行記錄時,子表中的行記錄將通過使用on delete cascade選項自動刪除。
mysql delete的例子
employees表進行演示
| field | type | null | key | default | extra |
| emp_id | int(11) | no | pri | null | auto_increment |
| emp_name | varchar(255) | no | | null | |
| performance | int(11) | yes | mul | null | |
| salary | float | yes | | null | |
4 rows in set請注意,一旦刪除資料,它就會永遠消失。 因此,在執行delete語句之前,應該先備份資料庫,以防萬一要找回刪除過的資料。
假設要刪除officenumber為4的員工,則使用delete語句與where子句作為以下查詢:
delete from employees
where
officecode = 4;
delete from employees;
delete from table
limit row_count;
delete from table_name
order by c1, c2, ...
limit row_count;
delete from customers
order by customername
limit 10;
delete from customers
where country = 'france'
order by creditlimit
limit 5;
delete from customers
where country = 'france'
order by creditlimit
limit 5;
mysql 遊戲 知乎 遊戲效能優化雜談(七)
當代的遊戲引擎,cpu端的乙個主要工作其實就是在進行遊戲當中諸多actor的生命週期管理。遊戲相對於其它軟體的乙個顯著特點是,它的執行就是為了呈現。普通軟體注重的是功能和業務流,完成既定任務是軟體的主要目的 但是遊戲軟體的目的就是呈現。因此,聰明地 對遊戲場景以及actor進行管理,對於遊戲的整體效...
摘自知乎 mysql
允許晚輩叫一聲前輩。從前輩的描述中可以看出前輩對mysql已經有很好的理解,但我還是想從我這個半知半解的晚輩角度提出幾點。1.系統學習資料庫,最要緊的是把基本功打牢,所以 資料庫系統概念 原書第六版 是一本不可多得的好書,任何資料庫背後的原理基本上都是想通的,其他的都是不同廠商或組織做的改進和優化 ...
摘自知乎 mysql
允許晚輩叫一聲前輩。從前輩的描述中可以看出前輩對mysql已經有很好的理解,但我還是想從我這個半知半解的晚輩角度提出幾點。1.系統學習資料庫,最要緊的是把基本功打牢,所以 資料庫系統概念 原書第六版 是一本不可多得的好書,任何資料庫背後的原理基本上都是想通的,其他的都是不同廠商或組織做的改進和優化 ...