服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - MySQL中UPDATE与DELETE语句的使用教程

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

2020-05-27 15:09MYSQL教程网 Mysql

这篇文章主要介绍了MySQL中UPDATE与DELETE语句的使用教程,是MySQL入门学习中的基础知识,需要的朋友可以参考下

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

?
1
UPDATE tb_name SET column1 = new_value1,column2 = new_value2,… WHERE definition

该语法将数据表中符合 WHERE 条件的记录中的 column1 的值更新为 new_value1,column2 的值更新为 new_value2 ,以此类推。如果省略 WHERE 条件,则会将表中所有记录的 column 值进行更新。
例子:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?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();
}
?>

更新前数据:

MySQL中UPDATE与DELETE语句的使用教程
例子将 user 表中 username 为 小明 的 email 修改为 xiaoming@163.com 。
更新后数据:

MySQL中UPDATE与DELETE语句的使用教程
UPDATE 表达式
UPDATE 语法允许 SET 后面跟表达式。
例子 1 :

?
1
UPDATE article SET pv = pv+1 WHERE id = 123

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

?
1
UPDATE persondata SET age = age*2, age = age+1

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

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

?
1
DELETE FROM tb_name WHERE definition

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$conn = @mysql_connect("localhost","root","root123");
if (!$conn){
 die("连接数据库失败:" . 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("删除数据失败:".mysql_error());
}
?>

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

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

删除后数据:

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

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

延伸 · 阅读

精彩推荐