首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么store_result()不返回等同于mysqli正则语句的num_rows?

store_result()是MySQLi扩展中的一个方法,用于将查询结果存储在客户端的内存中,以便后续操作和处理。它通常与fetch()或fetch_all()方法一起使用来获取查询结果。

与之相对应的,num_rows是MySQLi扩展中的另一个方法,用于获取查询结果集中的行数。

store_result()和num_rows()之间的区别在于它们的作用和返回值类型不同。

store_result()方法的作用是将查询结果集存储在客户端的内存中,以便后续操作。它返回一个布尔值,表示存储结果是否成功。这个方法通常在执行SELECT语句后调用。

num_rows()方法的作用是获取查询结果集中的行数。它返回一个整数值,表示查询结果集中的行数。这个方法通常在执行SELECT语句后调用,并且在调用之前需要先调用store_result()方法。

为什么store_result()不返回等同于mysqli正则语句的num_rows呢?这是因为store_result()方法只是将查询结果集存储在客户端的内存中,并没有返回查询结果的行数。这样设计的原因可能是为了提高性能和减少网络传输的开销。如果在store_result()方法中返回查询结果的行数,那么在查询结果集较大的情况下,会增加网络传输的负担,降低性能。

如果需要获取查询结果的行数,可以在调用store_result()方法之后,再调用num_rows()方法来获取。这样可以避免不必要的网络传输开销,同时也可以提高性能。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云MySQL:https://cloud.tencent.com/product/cdb
  • 腾讯云数据库TDSQL:https://cloud.tencent.com/product/tdsql
  • 腾讯云云服务器CVM:https://cloud.tencent.com/product/cvm
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

执行sql语句时候mysqli详解

执行sql语句时候mysqli详解 1. 连接数据库 连接数据库有两种方式,一种是通过mysqli_connect()帮助函数,另一种是通过new mysqli()对象来实现 两者所需传的参数同样都是这些(注意先后顺序): host 数据库地址 数据库地址可以传入域名或ip地址,如localhost或者127.0.0.1 username 管理用户名 管理员账号,如: root password 管理员密码 管理员账号的密码 dtabases 要连接的数据 选择要连接的数据库 port 端口号 该参数如果不传,默认请求3306端口 2. 设置字符集 使用mysqli_set_charset($connect, 'utf8');函数设置 第一个参数为mysqli的对象,第二个参数为需要设置的字符集,注意mysql的字符集中的utf8没有中间的- 使用面向对象的方式创建 $connect = new mysqli('127.0.0.1', 'root', 'root', 'test', 8889);$connect->set_charset('utf8');// 或者$connect = mysqli_connect('127.0.0.1', 'root', 'root', 'test', 8889);$connect->set_charset('utf8'); # 都可以这么使用 3. 执行sql语句 通过mysqli_query()进行执行SELECT, SHOW,DESCRIBE或 EXPLAIN,失败时返回false $sql = "SHOW TABLES"; $res = $connect->query($sql); # 或者 mysqli_query($connect, $sql); 打印一下他返回了什么 var_dump($res);object(mysqli_result)[2] public 'current_field' => int 0 public 'field_count' => int 1 public 'lengths' => null public 'num_rows' => int 2 # 返回了几条数据 public 'type' => int 0 4. 获取结果 通过mysqli_query()执行的sql语句之后如何获取结果呢?可以通过mysqli_fetch_array()、mysqli_fetch_assoc()、mysqli_fetch_all()、mysqli_fetch_row()等进行获取结果 当需要获取一条数据的时候可以使用mysqli_fetch_row() mysqli_fetch_array() 该函数的第一个参数是通过mysqli_query()返回的对象 第二个参数是获取结果的类型: ​ MYSQLI_ASSOC 关联数组 同mysqli_fetch_assoc()函数 ​ MYSQLI_NUM 数字数组 ​ MYSQLI_BOTH默认。同时产生关联和数字数组

02
领券