PHP Manual
后退 |  | 前进

# ocilogon

(PHP 3 >= 3.0.4, PHP 4, PHP 5)

ocilogon -- È·Á¢Ò»¸öµ½ Oracle µÄÁ¬½Ó

## ÃèÊö

resource ocilogon ( string username, string password [, string db] )

ocilogon() ·µ»ØÒ»¸öOCI µ÷ÓÃÐèÒªµÄÁ¬½Ó±êÖ¾·û¡£ ¿ÉÑ¡µÄµÚ3¸ö²ÎÊýº¬ÓÐÄãÏëÒªÁ¬½ÓµÄÊý¾Ý¿âµÄÃû×Ö£¬¸ÃÃû×ÖÎª±¾µØ Oracle ÊµÁÐµÄÃû×Ö»òÕßÔÚ tnsnames.ora µÄÌõÄ¿ÖÐµÄÃû×Ö¡£ Èç¹ûµÚ3¸ö²ÎÊýÃ»ÓÐ¶¨Òå£¬ PHP Ê¹ÓÃ»·¾³±äÁ¿ ORACLE_SID (Oracle ÊµÁÐ) »ò TWO_TASK (tnsnames.ora) À´È·¶¨Á¬½ÓÄÄÒ»¸öÊý¾Ý¿â¡£

µ±Ê¹ÓÃ ocilogon() µÄÊ±ºò£¬ Á¬½ÓÔÚÒ³Ë®Æ½ÉÏ±»¹²Ïí¡£ ÕâÒâÎ¶×ÅÌá½»ºÍ»Ø¹öÓ¦ÓÃµ½¸ÃÒ³ËùÓÐ¿ª·ÅµÄÊÂÎñ£¬ÉõÖÁÔÚÄãÒÑ¾´´½¨ ¶à¸öÁ¬½ÓµÄÇé¿öÏÂ¡£

Õâ¸öÀý×ÓÑÝÊ¾Á¬½ÓÊÇÔõÑù±»¹²ÏíµÄ¡£

例子 1. ocilogon()

`<?php
echo "<pre>";
$db = "";
$c1 = ocilogon("scott", "tiger", $db);
$c2 = ocilogon("scott", "tiger", $db);
function create_table($conn)
{
$stmt = ociparse($conn, "create table scott.hallo (test varchar2(64))");
ociexecute($stmt);
echo $conn . " created table\n\n";
}
function drop_table($conn)
{
$stmt = ociparse($conn, "drop table scott.hallo");
ociexecute($stmt);
echo $conn . " dropped table\n\n";
}
function insert_data($conn)
{
$stmt = ociparse($conn, "insert into scott.hallo
values('$conn' || ' ' || to_char(sysdate,'DD-MON-YY HH24:MI:SS'))");
ociexecute($stmt, OCI_DEFAULT);
echo $conn . " inserted hallo\n\n";
}
function delete_data($conn)
{
$stmt = ociparse($conn, "delete from scott.hallo");
ociexecute($stmt, OCI_DEFAULT);
echo $conn . " deleted hallo\n\n";
}
function commit($conn)
{
ocicommit($conn);
echo $conn . " committed\n\n";
}
function rollback($conn)
{
ocirollback($conn);
echo $conn . " rollback\n\n";
}
function select_data($conn)
{
$stmt = ociparse($conn, "select * from scott.hallo");
ociexecute($stmt, OCI_DEFAULT);
echo $conn."----selecting\n\n";
while (ocifetch($stmt)) {
echo $conn . " [" . ociresult($stmt, "TEST") . "]\n\n";
}
echo $conn . "----done\n\n";
}
create_table($c1);
insert_data($c1); // Insert a row using c1
insert_data($c2); // Insert a row using c2
select_data($c1); // Results of both inserts are returned
select_data($c2);
rollback($c1); // Rollback using c1
select_data($c1); // Both inserts have been rolled back
select_data($c2);
insert_data($c2); // Insert a row using c2
commit($c2); // Commit using c2
select_data($c1); // Result of c2 insert is returned
delete_data($c1); // Delete all rows in table using c1
select_data($c1); // No rows returned
select_data($c2); // No rows returned
commit($c1); // Commit using c1
select_data($c1); // No rows returned
select_data($c2); // No rows returned
drop_table($c1);
echo "</pre>";
?>`

²Î¼û ociplogon() ºÍ ocinlogon()¡£

后退 | 起点 | 前进
ocilogoff | 上一级 | ocinewcollection