本文实例分析了PHP中mysqli_affected_rows作用行数返回值。分享给大家供大家参考。具体分析如下:
mysqli中关于update操作影响的行数可以有两种返回形式:
1. 返回匹配的行数
2. 返回影响的行数
默认情况下mysqli_affected_rows返回的值为影响的行数,如果我们需要返回匹配的行数,可以使用mysqli_real_connect函数进行数据库连接的初始化,并在函数的flag参数位加上:
MYSQLI_CLIENT_FOUND_ROWS return number of matched rows, not the number of affected rows
普通格式:
int mysqli_affected_rows ( mysqli link )
oop格式:
class mysqli { int affected_rows }
普通模式,代码如下:
<?php $link = mysqli_connect("localhost", "my_user", "my_password", "world"); if (!$link) { printf("Can't connect to localhost. Error: %sn", mysqli_connect_error()); exit(); } /* Insert rows */ mysqli_query($link, "CREATE TABLE Language SELECT * from CountryLanguage"); printf("Affected rows (INSERT): %dn", mysqli_affected_rows($link)); mysqli_query($link, "ALTER TABLE Language ADD Status int default 0″); /* update rows */ mysqli_query($link, "UPDATE Language SET Status=1 WHERE Percentage > 50″); printf("Affected rows (UPDATE): %dn", mysqli_affected_rows($link)); /* delete rows */ mysqli_query($link, "DELETE FROM Language WHERE Percentage < 50″); printf("Affected rows (DELETE): %dn", mysqli_affected_rows($link)); /* select all rows */ $result = mysqli_query($link, "SELECT CountryCode FROM Language"); printf("Affected rows (SELECT): %dn", mysqli_affected_rows($link)); mysqli_free_result($result);/* Delete table Language */ mysqli_query($link, "DROP TABLE Language"); /* close connection */ mysqli_close($link); ?>
<?php $mysqli = new mysqli("localhost", "my_user", "my_password", "world"); /* check connection */ if (mysqli_connect_errno()) { printf("Connect failed: %sn", mysqli_connect_error()); exit(); } /* Insert rows */ $mysqli->query("CREATE TABLE Language SELECT * from CountryLanguage"); printf("Affected rows (INSERT): %dn", $mysqli->affected_rows); $mysqli->query("ALTER TABLE Language ADD Status int default 0″); /* update rows */ $mysqli->query("UPDATE Language SET Status=1 WHERE Percentage > 50″); printf("Affected rows (UPDATE): %dn", $mysqli->affected_rows); /* delete rows */ $mysqli->query("DELETE FROM Language WHERE Percentage < 50″); printf("Affected rows (DELETE): %dn", $mysqli->affected_rows); /* select all rows */ $result = $mysqli->query("SELECT CountryCode FROM Language"); printf("Affected rows (SELECT): %dn", $mysqli->affected_rows); $result->close(); /* Delete table Language */ $mysqli->query("DROP TABLE Language"); /* close connection */ $mysqli->close(); ?>
希望本文所述对大家的php程序设计有所帮助。
问题内容: 我有以下代码: 所有人都可以正常发送电子邮件并将信息插入数据库,但是mysqli_affected_rows无法正常工作-如何在运行查询后编辑此代码以回显1? 问题答案: 改变这个 至 只需要对象,但您传递了查询对象,这也是问题所在
问题内容: 我是AJAX的新手,并且对PHP传递回jQuery感到困惑。因此,您具有如下的AJAX函数: (我从ajax的另一个StackOverflow页面上获得了此信息。) 但是在其他各种资源上,他们将拥有成功部分,如下所示: 我只是困惑于是什么决定了这个变量的命名?如果PHP最终回显了一个数组: 我如何从AJAX获得此信息? 问题答案: Ajax- Requests获取整个站点。因此,您不会
问题内容: 我正在使用Postgresql 8.3,并具有以下简单功能,该功能会将a返回 给客户端 现在,我可以使用以下SQL命令来调用此函数并操纵返回的游标,但是游标名称是由PostgreSQL自动生成的 此外,如38.7.3.5中所述,显式地将游标名称声明为函数的输入参数 。返回游标。我可以声明自己的游标名称并使用此游标名称来操纵返回的游标,而不是为我自动生成的Postgresql吗?如果不是
问题内容: 更新2: 那么这是它可以获得的最优化的吗? 更新1: 我知道我可以给sql查询增加限制,但是我也想摆脱foreach循环,这是我不应该需要的。 原始问题: 我有以下脚本,由于“ foreach”部分的缘故,它是从数据库返回许多行的良好IMO。 如果我知道我将总是只从数据库中获得1行,该如何优化它。如果我知道我只会从数据库中获得1行,我不明白为什么需要foreach循环,但是我不知道如何
Lua 具有一项与众不同的特性,允许函数返回多个值。Lua 的库函数中,有一些就是返回多个值。 示例代码:使用库函数 string.find,在源字符串中查找目标字符串,若查找成功,则返回目标字符串在源字符串中的起始位置和结束位置的下标。 local s, e = string.find("hello world", "llo") print(s, e) -->output 3 5 返回多个值
我一直在做这个岩石剪刀剪刀程序一段时间,它没有显示的方式,它应该是应该的。我在代码中使用了值返回函数。问题在程序的末尾显现出来。游戏的结果将被替换,但实际显示的是另一个提示,供用户输入他们的选择。下面是我的代码: