PHP可以连接数据库就是执行不了SQL语句也返回不了受影响行数

PHP可以连接数据库就是执行不了SQL语句也返回不了受影响行数,第1张

1.最大执行时间问题,解决方法:分批处理逻辑,比如用ID大小分批处理

2.多字段组合不可重复的设定,解决方法:查看表设计结构,看看有没有此项设定

3.去掉执行语句1,只运行语句2.

定义和用法mysql_affected_rows() 函数返回前一次 MySQL *** 作所影响的记录行数

语法mysql_affected_rows(link_identifier)

参数:

描述link_identifier

必需:

MySQL 的连接标识符。如果没有指定,默认使用最后被 mysql_connect() 打开的连接。如果没有找到该连接,函数会尝试调用 mysql_connect() 建立连接并使用它。如果发生意外,没有找到连接或无法建立连接,系统发出 E_WARNING 级别的警告信息。

说明:

取得最近一次与 link_identifier 关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数。

返回值:

执行成功,则返回受影响的行的数目,如果最近一次查询失败的话,函数返回 -1。

如果最近一次 *** 作是没有任何条件(WHERE)的 DELETE 查询,在表中所有的记录都会被删除,但本函数返回值在 4.1.2 版之前都为 0。

当使用 UPDATE 查询,MySQL 不会将原值与新值一样的列更新。这样使得 mysql_affected_rows() 函数返回值不一定就是查询条件所符合的记录数,只有真正被修改的记录数才会被返回。

REPLACE 语句首先删除具有相同主键的记录,然后插入一个新记录。该函数返回的是被删除的记录数加上被插入的记录数。

例子

<?php

$con = mysql_connect("localhost","mysql_user","mysql_pwd")

if (!$con)

{

die("Could not connect: " . mysql_error())

}

mysql_select_db("mydb")

mysql_query("DELETE FROM mytable WHERE id <5")

$rc = mysql_affected_rows()

echo "Records deleted: " . $rc

mysql_close($con)

?>

输出:Records deleted: 4

举例如下:

创建userinfo_update.php页面用于查询用户信息,先显示信息,在修改:

先通过GET获取用户编号查询用户信息:

$sql = "select * from user_info where user_id='".$_GET['userId']."'"

$result = mysql_query($sql,$con)

if($row = mysql_fetch_array($result)){

}

页面效果:

创建update.php文件,用于修改用户信息:

使用到了mysql_affected_rows() 函数返回前一次 MySQL *** 作所影响的记录行数。

//通过post获取页面提交数据信息

$userId = $_POST[userId]

$userName = $_POST[userName]

$userAge = $_POST[userAge]

$sql = "update user_info set user_name='".$userName."',user_age=".$userAge." where user_id='".$userId."'"

mysql_query($sql,$conn)//执行SQL

$mark  = mysql_affected_rows()//返回影响行数

$url = "userinf_select.php"

运行结果

创建delete.php文件,完成删除用户信息功能:

$userId = $_GET['userId']

include 'connection.php'

$sql = "delete from user_info where user_id='".$userId."'"

mysql_query($sql,$con)

$mark  = mysql_affected_rows()//返回影响行数

if($mark>0){

echo "删除成功"

}else{

echo  "删除失败"

}

mysql_close($con)

运行结果:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6617637.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-25
下一篇 2023-03-25

发表评论

登录后才能评论

评论列表(0条)

保存