Der aktuellen Wert der Sequenz zaehler_der_tabelle_xy kann durch Verwendung von currval (abgeleitet von Current Value) ermittelt werden. Mit dem folgenden Codestück ist es möglich, den zuletzt eingefügten Wert abzufragen:
// INSERT in die Tabelle $stmt = OCIParse($conn, "INSERT INTO xy (BLA_XY) VALUES 'BLA'"); OCIExecute($stmt, OCI_DEFAULT); //Abfrage der Sequence $stmt = OCIParse($conn,"SELECT zaehler_der_tabelle_xy.currval AS CV FROM DUAL"); OCIExecute($stmt, OCI_DEFAULT); OCIFetch($stmt); $last_id=OCIResult($stmt, "CV"); OCICommit($conn);
Achtung: Das selektieren des currval funktioniert nur innerhalb derselben Transaktion (daher auch beim OCI_DEFAULT). Will man den aktuellen höchsten ID-Wert ermitteln, ist es besser, unter Verwendung der SQL-Funktion MAX() den höchsten Wert direkt aus der Tabelle abzufragen.






