Maison > base de données > tutoriel mysql > MySQL中UPDATE与DELETE语句的使用教程_MySQL

MySQL中UPDATE与DELETE语句的使用教程_MySQL

PHP中文网
Libérer: 2016-05-27 13:45:53
original
1474 Les gens l'ont consulté

MySQL中UPDATE与DELETE语句的使用教程_MySQL

UPDATE 更新

UPDATE SET 语法用于修改更新数据表中的数据。
语法:

UPDATE tb_name SET column1 = new_value1,column2 = new_value2,… WHERE definition
Copier après la connexion


该语法将数据表中符合 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 &#39;gbk&#39;"); 
 
$sql = "UPDATE user SET email = &#39;xiaoming@163.com&#39; WHERE username = &#39;小明&#39;";
if(mysql_query($sql,$conn)){
 echo "更新数据成功!";
} else {
 echo "更新数据失败:".mysql_error();
}
?>
Copier après la connexion

更新前数据:

20151216113630463.png (637×126)
例子将 user 表中 username 为 小明 的 email 修改为 xiaoming@163.com 。
更新后数据:

20151216113648305.png (645×134)
UPDATE 表达式
UPDATE 语法允许 SET 后面跟表达式。
例子 1 :


UPDATE article SET pv = pv+1 WHERE id = 123
Copier après la connexion


该例子让 id 为 123 的文章在被点击阅读的时候点击量加 1 。
例子 2 :


UPDATE persondata SET age = age*2, age = age+1
Copier après la connexion


该例子 SET 后面跟了两个表达式:age = age*2(年龄加倍),age = age+1(再加 1 )。这种多个表达式的情况,是按照从左往右顺序执行的。

Delete From 删除数据
DELETE 删除
DELETE FROM 语法用于删除数据表的数据记录。
语法:


DELETE FROM tb_name WHERE definition
Copier après la connexion


该语法将数据表中符合 WHERE 条件的数据记录删除。如果省略WHERE条件,则会将表中记录全部删除。
例子:

<?php
$conn = @mysql_connect("localhost","root","root123");
if (!$conn){
 die("连接数据库失败:" . mysql_error());
}
 
mysql_select_db("test", $conn);
mysql_query("set names &#39;gbk&#39;"); 
 
$sql = "DELETE FROM user WHERE username = &#39;小王&#39;";
if(mysql_query($sql,$conn)){
 echo "删除 ".mysql_affected_rows()." 条数据记录。";
} else {
 exit("删除数据失败:".mysql_error());
}
?>
Copier après la connexion

删除数据成功,浏览器输出:
删除 1 条数据记录。
删除前数据:

20151216113726698.png (638×123)

删除后数据:

20151216113743712.png (643×105)

如果没有符合条件的记录被删除,但 mysql_query() 仍然返回 TRUE (除非 SQL 语法错误)。因此要精确判断数据记录是否被删除,需要调用 mysql_affected_rows() 函数(该函数返回最近一次 INSERT,UPDATE 或 DELETE 查询所影响的记录行数)。
提示
如果只是想删除某条记录的某个字段数据,请使用 UPDATE SET 语法将其置为空。

以上就是MySQL中UPDATE与DELETE语句的使用教程_MySQL的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal