示例

以下是一个简单的示例,建立了 PHP 和 CUBRID 之间的连接。本节将涵盖最基本和最显著的功能。以下代码需要连接到 CUBRID 数据库,这意味着 CUBRID 服务器和 CUBRID 代理必须在运行中。

以下示例使用 demodb 数据库作为示例。默认情况下,它在安装过程中创建。请确保它已创建。

示例 #1 数据检索示例

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=euc-kr">
</head>
<body>
<center>
<table border=2>
<?php
/**
* 设置 CUBRID 连接的服务器信息。host_ip 是安装 CUBRID 代理的 IP
* 地址(在本例中为 localhost),host_port 是 CUBRID 代理的端口号。
* 端口号是安装过程中给定的默认值。
* 有关详细信息,请参阅“管理员指南”。
*/
$host_ip = "localhost";
$host_port = 33000;
$db_name = "demodb";
/**
* 连接到 CUBRID 服务器。不进行实际连接,但
* 只保留连接信息。不进行实际连接的原因是为了在 3 层架构中
* 更有效地处理事务。
*/
$cubrid_con = @cubrid_connect($host_ip, $host_port, $db_name);

if (!
$cubrid_con) {
echo
"数据库连接错误";
exit;
}
?>
<?php
$sql
= "select sports, count(players) as players from event group by sports";
/**
* 向 CUBRID 服务器请求 SQL 语句的结果。
* 现在进行到 CUBRID 服务器的实际连接。
*/
$result = cubrid_execute($cubrid_con, $sql);

if (
$result) {
/**
* 从 SQL 查询创建的结果集获取列名。
*/
$columns = cubrid_column_names($result);
/**
* 获取由 SQL 查询创建的结果集中列的数量。
*/
$num_fields = cubrid_num_cols($result);
/**
* 在屏幕上列出结果集的列名。
*/
echo "<tr>";

while (list(
$key, $colname) = each($columns)) {
echo
"<td align=center>$colname</td>";
}

echo
"</tr>";

/**
* 从结果集中获取结果。
*/
while ($row = cubrid_fetch($result)) {
echo
"<tr>";

for (
$i = 0; $i < $num_fields; $i++) {
echo
"<td align=center>";
echo
$row[$i];
echo
"</td>";
}

echo
"</tr>";
}
}
/**
* CUBRID 中的 PHP 模块在 3 层架构中运行。即使在
* 调用 SELECT 进行事务处理时,它也会作为事务的一部分进行处理。
* 因此,即使调用 SELECT,也需要通过调用 commit 或 rollback 来回滚事务,以便
* 性能平稳。
*/
cubrid_commit($cubrid_con);
cubrid_disconnect($cubrid_con);
?>
</body>
</html>

示例 #2 数据插入示例

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=euc- kr">
</head>
<body>
<center>
<table border=2>
<?php
/**
* host_ip 是安装 CUBRID 代理的 IP 地址
* host_port 是 CUBRID 代理的端口号
* db_name 是 CUBRID 数据库的名称
*/
$host_ip = "localhost";
$host_port = 33000;
$db_name = "demodb";
$cubrid_con = @cubrid_connect($host_ip, $host_port, $db_name);

if (!
$cubrid_con) {
echo
"数据库连接错误";
exit;
}
?>
<?php
$sql
= "insert into olympic (host_year,host_nation,host_city,"
. "opening_date,closing_date) values (2008, 'China', 'Beijing',"
. "to_date('08-08-2008','mm-dd- yyyy'),to_date('08-24-2008','mm-dd-yyyy')) ;";
$result = cubrid_execute($cubrid_con, $sql);
if (
$result) {
/**
* 处理成功,因此提交。
*/
cubrid_commit($cubrid_con);
echo
"插入成功 ";
} else {
/**
* 发生错误,因此输出错误消息并调用回滚。
*/
echo cubrid_error_msg();
cubrid_rollback($cubrid_con);
}
cubrid_disconnect($cubrid_con);
?>
</body>
</html>
添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top