PHP ʖ²ἯTH
º/A
OCIBindByName
èʶ
=ד 1. OCIDefineByName
?php /* OCIBindByPos example thies@thieso.net (980221) inserts 3 records into emp, and uses the ROWID for updating the records just after the insert. */ $conn = OCILogon("scott","tiger"); $stmt = OCIParse($conn,"insert into emp (empno, ename) ". "values (:empno,:ename) ". "returning ROWID into :rid"); $data = array(1111 = "Larry", 2222 = "Bill", 3333 = "Jim"); $rowid = OCINewDescriptor($conn,OCI_D_ROWID); OCIBindByName($stmt,":empno", $empno,32); OCIBindByName($stmt,":ename", $ename,32); OCIBindByName($stmt,":rid", $rowid,-1,OCI_B_ROWID); $update = OCIParse($conn,"update emp set sal = :sal where ROWID = :rid"); OCIBindByName($update,":rid", $rowid,-1,OCI_B_ROWID); OCIBindByName($update,":sal", $sal,32); $sal = 10000; while (list($empno,$ename) = each($data)) {OCIExecute($stmt); OCIExecute($update);} $rowid- free(); OCIFreeStatement($update); OCIFreeStatement($stmt); $stmt = OCIParse($conn,"select * from emp where empno in (1111,2222,3333)"); OCIExecute($stmt); while (OCIFetchInto($stmt, $arr,OCI_ASSOC)) {var_dump($arr);} OCIFreeStatement($stmt); /* delete our "junk" from the emp table.... */ $stmt = OCIParse($conn,"delete from emp where empno in (1111,2222,3333)"); OCIExecute($stmt); OCIFreeStatement($stmt); OCILogoff($conn);?
¾¯¸漯B
º/A
ưµ㼯A
Oracle 8 º¯ʽ
ɏһ¼¶
OCICancel