我需要,我在PHP中使用PDO插入的最後一行。我一直在尋找,我發現PDO :: lastInsertId,但它不適用於Oracle。如何使用PDO獲取Oracle上最後一個插入的行?
我有什麼選擇?其他方法來做到這一點?我想使用PDO獲得序列的當前值(在該表中我使用序列來增加ID),但我不知道我是否可以。
更新1:
這裏是我的代碼。
static function insertarProveedor($name, $address, $phone, $email) {
$con = conexionBD();
try {
$stmt = $con->prepare("INSERT INTO Proveedores (NOMBRE, DIRECCION, TELEFONO, EMAIL) VALUES (?, ?, ?, ?)
RETURNING OID_PROVEEDOR INTO :id");
$stmt->bindParam(1, $nombre);
$stmt->bindParam(2, $direccion);
$stmt->bindParam(3, $telefono);
$stmt->bindParam(4, $correo);
$stmt->bindParam('OID_PROVEEDOR', $id, PDO::PARAM_INT, 8);
} catch (PDOException $e) {
echo "Error".$e->GetMessage();
}
return $id;
}
我得到了以下信息的錯誤:
ErrorSQLSTATE[HY093]: Invalid parameter number: mixed named and positional parameters
Notice: Undefined variable: id in D:\xampp\htdocs\Gestor\include\inserciones.inc on line 43
線43 return $id;
我添加這些代碼行,但我得到的是一個錯誤信息。錯誤在哪裏? –