我有一个Oracle Express 10g数据库。在我的表中,我有一个自动生成的ID,我想知道如何在插入发生后找到生成的ID。我目前正在使用PHP。
答案 0 :(得分:7)
您可以将返回的id转换为变量。例如,此代码:
$data = array("larry","bill","steve");
$db = OCILogon("scott","tiger");
$stmt = OCIParse($db,"insert into names values (myid.nextval,:name) returning id into :id");
OCIBindByName($stmt,":ID",$id,32);
OCIBindByName($stmt,":NAME",$name,32);
while (list(,$name) = each($data))
{
OCIExecute($stmt);
echo "$name got id:$id\n";
}
这会以变量$name
的形式为您提供$id
获取的ID。相应地更改您的SQL。