Php/docs/cubrid.examples

来自菜鸟教程
跳转至:导航、​搜索

范例

下面是一个在PHP和CUBRID建立连接的简单的例子。本节将覆盖最基本和最显著的特性。下面的代码需要连接CUBRID数据库,这意味着 CUBRID服务和 CUBRID Broker已经运行。

下面用demodb数据库作为例子举例。默认在安装时就创建了。确认此数据库已经被创建。

Example #1 数据查询的例子

<html>    <head>    <meta http-equiv="content-type" content="text/html; charset=euc-kr">    </head>    <body>    <center>    <table border=2>    <?php        /**         * Set server information for CUBRID connection. host_ip is the IP         * address where the CUBRID Broker is installed (localhost in this         * example), and host_port is the port number of the CUBRID Broker.         * The port number is the default given during the installation.         * For details, see "Administrator's Guide."         */        $host_ip = "localhost";        $host_port = 33000;        $db_name = "demodb";        /**         * Connect to CUBRID Server. Do not make the actual connection, but         * only retain the connection information. The reason for not making         * the actual connection is to handle transaction more efficiently         * in the 3-tier architecture.          */        $cubrid_con = @cubrid_connect($host_ip, $host_port, $db_name);         if (!$cubrid_con) {            echo "Database Connection Error";            exit;        }    ?>    <?php        $sql = "select sports, count(players) as players from event group by sports";        /**         * Request the CUBRID Server for the results of the SQL statement.         * Now make the actual connection to the CUBRID Server.         */        $result = cubrid_execute($cubrid_con, $sql);         if ($result) {            /**             * Get the column names from the result set created by the SQL query.             */            $columns = cubrid_column_names($result);            /**             * Get the number of columns in the result set created by the SQL query.             */            $num_fields = cubrid_num_cols($result);            /**             * List the column names of the result set on the screen.              */            echo("<tr>");             while (list($key, $colname) = each($columns)) {                echo("<td align=center>$colname</td>");            }             echo("</tr>");             /**             * Get the results from the result set.             */            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>");            }        }        /**         * The PHP module in the CUBRID runs in a 3-tier architecture. Even when         * calling SELECT for transaction processing, it is processed as a part         * of the transaction. Therefore, the transaction needs to be rolled back         * by calling commit or rollback even though SELECT was called for smooth         * performance.         */        cubrid_commit($cubrid_con);        cubrid_disconnect($cubrid_con);    ?>    </body>    </html>

Example #2 数据插入的例子

<html>    <head>    <meta http-equiv="content-type" content="text/html; charset=euc- kr">    </head>    <body>    <center>    <table border=2>    <?php        /**         * host_ip is the IP address where the CUBRID Broker is installed         * host_port is the port number of the CUBRID Broker         * db_name is the name of CUBRID Database         */        $host_ip = "localhost";        $host_port = 33000;        $db_name = "demodb";        $cubrid_con = @cubrid_connect($host_ip, $host_port, $db_name);         if (!$cubrid_con) {            echo "Database Connection Error";            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) {            /**             * Handled successfully, so commit.             */            cubrid_commit($cubrid_con);            echo("Inserted successfully ");        } else {            /**             * Error occurred, so the error message is output and rollback is called.             */            echo(cubrid_error_msg());            cubrid_rollback($cubrid_con);        }        cubrid_disconnect($cubrid_con);    ?>    </body>    </html>