 |
(PHP
3>= 3.0.8, PHP 4) OCINLogon - устанавливает новое соединение с Oracle. Описаниеint
OCINLogon (string username, string password [, string db]) OCINLogon()
создаёт новое соединение с БД Oracle 8 и выполняет вход. Необязательный третий
параметр может содержать имя локального экземпляра Oracle или имя вхождения в
tnsnames.ora, с которым вы хотите соединиться. Если необязательный третий параметр
не специфицирован, PHP использует переменные окружения ORACLE_SID (Oracle-экземпляр)
или TWO_TASK (tnsnames.ora) для определения того, с какой БД соединяться. OCINLogon()
форсирует создание нового соединения. Это нужно использовать, если вам необходимо
изолировать набор транзакций. По умолчанию соединения совместно используются/share
на уровне страницы, если применяется OCILogon(), либо на уровне процесса
web-сервера, если используется OCIPLogon(). Если у вас имеется несколько
соединений, открытых с помощью OCINLogon(), все подтверждения и откаты
применяются только к специфицированному соединению. В примере показано разделение
соединений. Пример
1. OCINLogon<?php print "<HTML><PRE>"; $db = ""; $c1 = ocilogon("scott","tiger",$db);
$c2 = ocinlogon("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); select_data($c1);
select_data($c2); rollback($c1); select_data($c1); select_data($c2); insert_data($c2);
commit($c2); select_data($c1); delete_data($c1); select_data($c1); select_data($c2);
commit($c1); select_data($c1); select_data($c2); drop_table($c1); print "</PRE></HTML>";
?> |
|
См. также OCILogon()
и OCIPLogon(). |  |