我正在对 Oracle DB 进行非常基本的插入,并使用 RETURNING INTO 子句来获取主键。不过,我经常得到一个空返回,而且我一生都无法弄清楚问题可能是什么。除了这个问题,行插入非常好。下面的代码:
$requestParentSQL = "INSERT INTO
KRANE_REQUEST (
DATE_REQUESTED,
DATE_EMAILED,
PERSON_ID,
AUTHORISER_ID
)
VALUES (
SYSDATE,
SYSDATE,
'$theUser',
'$theAuthoriser'
)
RETURNING
KRANE_REQUEST_ID
INTO
:NEW_KRID";
$oracleConnection = oci_connect(_DATABASEUSERNAME, _DATABASEPASSWORD, _DATABASE);
$oracleStatement = oci_parse($oracleConnection, $requestParentSQL);
oci_bind_by_name($oracleStatement, ':NEW_KRID', $theNewKRID, 8);
oci_execute($oracleStatement, OCI_DEFAULT);
oci_commit($oracleConnection);
oci_free_statement($oracleStatement);
oci_close($oracleConnection);