UPDATE 更新
UPDATE SET 語法用于修改更新數據表中的數據。
語法:
UPDATE tb_name SET column1 = new_value1,column2 = new_value2,… WHERE definition
該語法將數據表中符合 WHERE 條件的記錄中的 column1 的值更新為 new_value1,column2 的值更新為 new_value2 ,以此類推。如果省略 WHERE 條件,則會將表中所有記錄的 column 值進行更新。
例子:
<?php$conn = @mysql_connect("localhost","root","root123");if (!$conn){ die("連接數據庫失敗:" . mysql_error());}mysql_select_db("test", $conn);mysql_query("set names 'gbk'"); $sql = "UPDATE user SET email = 'xiaoming@163.com' WHERE username = '小明'";if(mysql_query($sql,$conn)){ echo "更新數據成功!";} else { echo "更新數據失敗:".mysql_error();}?>
更新前數據:
例子將 user 表中 username 為 小明 的 email 修改為 xiaoming@163.com 。
更新后數據:
UPDATE 表達式
UPDATE 語法允許 SET 后面跟表達式。
例子 1 :
UPDATE article SET pv = pv+1 WHERE id = 123
該例子讓 id 為 123 的文章在被點擊閱讀的時候點擊量加 1 。
例子 2 :
UPDATE persondata SET age = age*2, age = age+1
該例子 SET 后面跟了兩個表達式:age = age*2(年齡加倍),age = age+1(再加 1 )。這種多個表達式的情況,是按照從左往右順序執行的。
Delete From 刪除數據
DELETE 刪除
DELETE FROM 語法用于刪除數據表的數據記錄。
語法:
DELETE FROM tb_name WHERE definition
該語法將數據表中符合 WHERE 條件的數據記錄刪除。如果省略WHERE條件,則會將表中記錄全部刪除。
例子:
<?php$conn = @mysql_connect("localhost","root","root123");if (!$conn){ die("連接數據庫失?。?quot; . mysql_error());}mysql_select_db("test", $conn);mysql_query("set names 'gbk'"); $sql = "DELETE FROM user WHERE username = '小王'";if(mysql_query($sql,$conn)){ echo "刪除 ".mysql_affected_rows()." 條數據記錄。";} else { exit("刪除數據失?。?quot;.mysql_error());}?>
刪除數據成功,瀏覽器輸出:
刪除 1 條數據記錄。
刪除前數據:
刪除后數據:
如果沒有符合條件的記錄被刪除,但 mysql_query() 仍然返回 TRUE (除非 SQL 語法錯誤)。因此要精確判斷數據記錄是否被刪除,需要調用 mysql_affected_rows() 函數(該函數返回最近一次 INSERT,UPDATE 或 DELETE 查詢所影響的記錄行數)。
提示
如果只是想刪除某條記錄的某個字段數據,請使用 UPDATE SET 語法將其置為空。