prepare
mysqli::prepare
mysqli_prepare
Prepares an SQL statement for execution
ENTITY
ENTITY
public
mysqli_stmt
false
mysqli::prepare
string
query
ENTITY
mysqli_stmt
false
mysqli_prepare
mysqli
mysql
string
query
Prepares the SQL query, and returns a statement handle to be used for further operations on the statement. The query must consist of a single SQL statement.
The statement template can contain zero or more question mark (?) parameter markers—also called placeholders. The parameter markers must be bound to application variables using mysqli_stmt_bind_param before executing the statement.
ENTITY
query
The query, as a string. It must consist of a single SQL statement.
The SQL statement may contain zero or more parameter markers represented by question mark (?) characters at the appropriate positions.
[!NOTE] The markers are legal only in certain places in SQL statements. For example, they are permitted in the
VALUES()list of anINSERTstatement (to specify column values for a row), or in a comparison with a column in aWHEREclause to specify a comparison value. However, they are not permitted for identifiers (such as table or column names).
ENTITY
mysqli_prepare returns a statement object or ENTITY if an error occurred.
ENTITY ENTITY
ENTITY
mysqli::prepare example
ENTITY
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$city = "Amersfoort";
/* create a prepared statement */
$stmt = $mysqli->prepare("SELECT District FROM City WHERE Name=?");
/* bind parameters for markers */
$stmt->bind_param("s", $city);
/* execute query */
$stmt->execute();
/* bind result variables */
$stmt->bind_result($district);
/* fetch value */
$stmt->fetch();
printf("%s is in district %s\n", $city, $district);
ENTITY
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$city = "Amersfoort";
/* create a prepared statement */
$stmt = mysqli_prepare($link, "SELECT District FROM City WHERE Name=?");
/* bind parameters for markers */
mysqli_stmt_bind_param($stmt, "s", $city);
/* execute query */
mysqli_stmt_execute($stmt);
/* bind result variables */
mysqli_stmt_bind_result($stmt, $district);
/* fetch value */
mysqli_stmt_fetch($stmt);
printf("%s is in district %s\n", $city, $district);
ENTITY
Amersfoort is in district Utrecht
ENTITY
mysqli_stmt_execute, mysqli_stmt_fetch, mysqli_stmt_bind_param, mysqli_stmt_bind_result, mysqli_stmt_get_result, mysqli_stmt_close
谢谢你的反馈!