RT,google说是sql语句太长,可以用绑定变量的形式。项目用的是yii,so,我用yii的bindParam ,倒是解决了 报字符太长的错,可是新的错误来了:仅能绑定要插入 LONG 列的 LONG 值。。
纠结中,,求助。。
挖坟。。隔了这么久,偶然找到了解决方法。。原来Oracle 官方文档就有方法。。汗。。。
使用 php_oci8扩展。
在插入时:
$sql = "INSERT INTO mylobs
(id,mylob)
VALUES
(mylobs_id_seq.NEXTVAL,EMPTY_CLOB())
RETURNING
mylob INTO :mylob_loc";
$stmt = oci_parse($conn, $sql);
$myLOB = oci_new_descriptor($conn, OCI_D_LOB);
oci_bind_by_name($stmt, ":mylob_loc", $myLOB, -1, OCI_B_CLOB);
oci_execute($stmt, OCI_DEFAULT) or die ("Unable to execute query\n");
$myLOB->save('mylob_loc');
oci_commit($conn);
oci_free_statement($stmt);
$myLOB->free();
oci_close($conn);
http://www.oracle.com/technetwork/art…
正文完