PHP mysqli query() 函数

定义和用法

query() / mysqli_query() 函数对数据库执行查询。

实例

例子 1 - 面向对象风格

对数据库执行查询:

<?php
$mysqli = new mysqli("localhost","my_user","my_password","my_db");

// 检查连接
if ($mysqli -> connect_errno) {
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
  exit();
}

// 执行查询
if ($result = $mysqli -> query("SELECT * FROM Persons")) {
  echo "Returned rows are: " . $result -> num_rows;
  // 释放结果集
  $result -> free_result();
}

$mysqli -> close();
?>

例子 2 - 过程式风格

对数据库执行查询:

<?php
$con = mysqli_connect("localhost","my_user","my_password","my_db");

if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  exit();
}

// 执行查询
if ($result = mysqli_query($con, "SELECT * FROM Persons")) {
  echo "Returned rows are: " . mysqli_num_rows($result);
  // 释放结果集
  mysqli_free_result($result);
}

mysqli_close($con);
?>

语法

面向对象风格:

$mysqli -> query(query, resultmode)

过程式风格:

mysqli_query(connection, query, resultmode)
参数 描述
connection 必需。指定要使用的 MySQL 连接
query 必需。指定 SQL 查询字符串
resultmode

可选。一个常量。可以是以下之一:

  • MYSQLI_USE_RESULT(用于检索大量数据)
  • MYSQLI_STORE_RESULT(默认值)

技术细节

返回值:

对于成功的 SELECT、SHOW、DESCRIBE 或 EXPLAIN 查询,它将返回 mysqli_result 对象。

对于其他成功的查询,它将返回 TRUE。失败时返回 FALSE。

PHP 版本: 5+
PHP 更新日志: PHP 5.3.0 添加了对异步查询的支持。