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

 更新时间:2015年12月16日 11:37:37   投稿:goldensun  
这篇文章主要介绍了MySQL中UPDATE与DELETE语句的使用教程,是MySQL入门学习中的基础知识,需要的朋友可以参考下

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();
}
?>

更新前数据:

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

该例子让 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("连接数据库失败:" . 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 条数据记录。
删除前数据:

20151216113726698.png (638×123)

删除后数据:

20151216113743712.png (643×105)

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

相关文章

  • 在Windows主机上定时备份远程VPS(CentOS)数据的批处理

    在Windows主机上定时备份远程VPS(CentOS)数据的批处理

    我想在自己的 Windows7 下每天/周运行一次备份,就有了这个小工具
    2012-05-05
  • MYSQL代码 定期备份Mysql数据库

    MYSQL代码 定期备份Mysql数据库

    Mysql自动备份脚本供大家参考,实现了定期备份Mysql数据库,并且可以选在在每周的一天做指定目录下文件的全面备份,备份文件自动上传到你指定的FTP上,保证了备份的可靠性。
    2009-04-04
  • MySQL字符之char、varchar类型简析

    MySQL字符之char、varchar类型简析

    varchar和char是MySQL中的两种数据类型,都是用来存储字符串的,下面这篇文章主要给大家介绍了关于MySQL字符之char、varchar类型的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • linux mysql5.6版本的安装配置过程

    linux mysql5.6版本的安装配置过程

    mysql官网开始发布相关的5.6系列的各个版本,对于mysql5.6系列的版本对一起的版本进行了全局性的细节性加强
    2013-06-06
  • MYSQL查看时区并设置时区的实现示例

    MYSQL查看时区并设置时区的实现示例

    本文主要介绍了MYSQL查看时区并设置时区的实现示例,包括查看全局和会话时区设置,设置全局和会话时区为东八区,具有一定的参考价值,感兴趣的可以了解一下
    2025-03-03
  • Ubuntu上mysql的安装及使用(通用版)

    Ubuntu上mysql的安装及使用(通用版)

    今天小编就为大家分享一篇关于Ubuntu上mysql的安装及使用(通用版),小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • linux系统中重置mysql的root密码

    linux系统中重置mysql的root密码

    我相信平时大家一定会遇到忘记密码的时候,实在记不起来了,我们就会重置密码,最快最直接的方法,这篇文章就是主要介绍了linux系统中重置mysql的root密码的方法,需要的朋友可以参考下
    2015-08-08
  • MySQL 如何处理隐式默认值

    MySQL 如何处理隐式默认值

    这篇文章主要介绍了MySQL 处理隐式默认值的相关资料,帮助大家更好的理解和使用MySQL,感兴趣的朋友可以了解下
    2020-12-12
  • MySQL多表关联on和where速度对比实测看谁更快

    MySQL多表关联on和where速度对比实测看谁更快

    这篇文章主要介绍了MySQL多表关联on和where速度对比实测看谁更快问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • MySQL自定义函数和存储过程示例详解

    MySQL自定义函数和存储过程示例详解

    这篇文章主要给大家介绍了关于MySQL自定义函数和存储过程的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04

最新评论