(PHP 3>= 3.0.8, PHP 4 >= 4.0.0)
ociNLogon --
Se connecte à un serveur Oracle avec une nouvelle connexion.
Description
resource ocinlogon
(string username, string password [, string
db])
ocinlogon() crée une nouvelle connexion à
un serveur Oracle et s'authentifie. Si l'option ORACLE_SID n'est pas
spécifié, PHP utilisera la variable d'environnement
ORACLE_SID pour déterminer le serveur de connexion.
ocinlogon() force le serveur à
établir une nouvelle connexion. Cette fonction ne
doit être utilisée que si vous voulez isoler un
ensemble de transactions. Par défaut, les connexions
sont partagées au niveau de la page, si vous utilisez
la fonction ocinlogon() ou bien au niveau
du processus web, si vous utilisez ociplogon().
Si vous avez de multiples connexions ouvertes avec
ocinlogon(), les validations et annulations
ne s'appliquent qu'à la connexion spécifée.
L'exemple ci-dessous montre l'utilisation des connexions
séparées.
Exemple 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." commited\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>";
?> |
|
Voir aussi
ocilogon() et
ociplogon().