2024年PHP开发者大会日本站

cubrid_prepare

(PECL CUBRID >= 8.3.0)

cubrid_prepare准备SQL语句以供执行

描述

cubrid_prepare(资源 $conn_identifier, 字符串 $prepare_stmt, 整数 $option = 0): 资源

cubrid_prepare() 函数是一种API,它表示先前已编译到给定连接句柄的SQL语句。此预编译的SQL语句将包含在 cubrid_prepare() 中。

因此,您可以有效地使用此语句重复执行多次或处理长数据。只能使用单个语句,并且参数可以在SQL语句的适当区域放置问号 (?)。在INSERT语句的VALUES子句或WHERE子句中绑定值时,添加参数。请注意,只有使用 cubrid_bind() 函数才能将值绑定到MARK(?)。

参数

conn_identifier

连接标识符。

prepare_stmt

准备查询。

option

OID返回选项 **CUBRID_INCLUDE_OID**。

返回值

如果处理成功,则返回请求标识符;如果失败,则返回 **false**。

范例

示例 #1 cubrid_prepare() 示例

<?php
$conn
= cubrid_connect("localhost", 33000, "demodb");

$sql = <<<EOD
SELECT g.event_code, e.name
FROM game g
JOIN event e ON g.event_code=e.code
WHERE host_year = ? AND event_code NOT IN (SELECT event_code FROM game WHERE host_year=?) GROUP BY event_code;
EOD;

$req = cubrid_prepare($conn, $sql);

cubrid_bind($req, 1, 2004);
cubrid_bind($req, 2, 2000);
cubrid_execute($req);

$row_num = cubrid_num_rows($req);
printf("共有 %d 个项目存在于2004年奥运会,但不存在于2000年。例如:\n\n", $row_num);

printf("%-15s %s\n", "Event_code", "Event_name");
printf("----------------------------\n");

$row = cubrid_fetch_assoc($req);
printf("%-15d %s\n", $row["event_code"], $row["name"]);
$row = cubrid_fetch_assoc($req);
printf("%-15d %s\n", $row["event_code"], $row["name"]);

cubrid_disconnect($conn);
?>

以上示例将输出

There are 27 event that exits in 2004 olympic but not in 2000. For example:

Event_code      Event_name
----------------------------
20063           +91kg
20070           64kg

参见

添加注释

用户贡献的笔记

此页面没有用户贡献的笔记。
To Top