章节
问答
课签
笔记
评论
占位
占位

PHP数据库操作之更新与删除数据

数据的更新与删除相对比较简单,只需要构建好相应的sql语句,然后调用mysql_query执行就能完成相应的更新与删除操作。

$sql = "update user set name = '曹操' where id=2 limit 1";
if (mysql_query($sql)) {
    echo '更新成功';
}

同样的删除可以使用类似以下的代码:

$sql = "delete from user where id=2 limit 1";
if (mysql_query($sql)) {
    echo '删除成功';
}

对于删除与更新操作,可以通过mysql_affected_rows函数来获取更新过的数据行数,如果数据没有变化,则结果为0。

$sql = "update user set name = '曹操' where id=2 limit 1";
if (mysql_query($sql)) {
    echo mysql_affected_rows();
}

任务

通过给定的变量$id,将改$id所在的行的name字段的值改成李白。

?不会了怎么办

在第10行以后输入以下代码:

$sql = "update user set name = '李白' where id='$id' limit 1";
mysql_query($sql);
||
1
2
<?php
//
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
提交
重置代码
||

请验证,完成请求

由于请求次数过多,请先验证,完成再次请求

加群二维码

打开微信扫码自动绑定

您还未绑定服务号

绑定后可得到

  • · 粉丝专属优惠福利
  • · 大咖直播交流干货
  • · 课程更新,问题答复提醒
  • · 账号支付安全提醒

收藏课程后,能更快找到我哦~

使用 Ctrl+D 可将课程添加到书签

邀请您关注公众号
关注后,及时获悉本课程动态

举报

0/150
提交
取消
全部 精华 我要发布

最新回答 / 慕沐7363818
你可以试试输出$id的值,var_dump($id),如果你的$id值为0,那么mysql_query($sql)会返回true ,“更新成功”也会输出,更新行数为0,符合你说的情况。具体原因的话我不太清楚,可能是数据库的数据是从编号1开始的吧

已采纳回答 / 放狗过来
将echo '数据更新行数:'.mysql_affected_rows();改成 echo '数据更新行数:'.'1';  

最新回答 / 惊梦无痕
说错了,应该是mysql_query($sql,$conn)

最赞回答 / 慕粉1033596665
因为后面已经改成了李白了,所以更新的条数当然没变。改成echo '数据更新行数:1';可以通过

最新回答 / PanameraTurboS
把输出那行改成echo '数据更新行数:'.(mysql_affected_rows()+1);就可以了。

最新回答 / 金泽城
唉,我去,研究了半个小时,终于知道怎么通过了,就把这行代码改成这样就行了:echo '数据更新行数:'.'1';坑爹啊。。。

最新回答 / Gir非碼農
更新id为2那一行中,姓名列,为曹操。

最新回答 / qq_慕无忌0416094
id为2是因为曹操前面有一条数据,曹操的数据是在第二行,所以ID=2就是为了找到条件为ID=2里的name去修改。limit是限制查找的条数,不使他全局搜索。找到相应的条数立刻停止。

最新回答 / 十月的天空城
mysql 中的limit 1 只是查询一条数据  如果 你想查询5条数据 那么 就应该 这么写:select * from table(表名字)limit 1 只查询 一条数据 mysql 返回一行数据 具体 看图  <...图片...>

已采纳回答 / 晚安sp
mysql_insert_id 的意思是取得上一步 INSERT 操作产生的 ID

最新回答 / 渣渣一只螺
执行成功,则返回受影响的行的数目,如果最近一次查询失败的话,函数返回 -1。
全部 我要发布
最热 最新
只看我的

账号登录 验证码登录

遇到问题
忘记密码

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?
代码语言