php oracle CLOB

1.php insert oracle 的CLOB字段

$sql = "INSERT INTO NC57.lsdcu_callreport(pk_cu_callreport,pk_cumandoc,evaluate,visittype,ansales,anpurchases,visitdate,creator,createtime,pk_dept,visitpurpose,customadd,attcustomers,attoriginal,attrname) VALUES('".$pk_cu_callreport."','".$pk_cumandoc."','".$evaluate."','".$visittype."','".$ansales."','".$anpurchases."','".$visitdate."','".$_SESSION['erp_upk']."','".date('Y-m-d H:i:s')."','".$_SESSION['erp_udpk']."','".$visitpurpose."','".$customadd."','".$attcustomers."','".$attoriginal."',EMPTY_CLOB())       RETURNING          attrname INTO :mylob_loc";
 $test_query = oci_parse($conn, $sql);
 $myLOB = oci_new_descriptor($conn, OCI_D_LOB);
 oci_bind_by_name($test_query, ":mylob_loc", $myLOB, -1, OCI_B_CLOB);
 try {
  oci_execute($test_query, OCI_DEFAULT);
 } catch (Exception $e) {
  echo message_and_redirect('alert', '添加失败:'.$e->getMessage(), -1);
  exit;
 }
 $myLOB->save($attrname);
 oci_commit($conn);
 oci_free_statement($test_query);
 $myLOB->free();

2:php更新oracle CLOB字段

$attrname     = iconv('utf-8', 'gbk',request_var('attrname', ''));
 $up_sql = "UPDATE NC57.lsdcu_callreport SET attrname = EMPTY_CLOB() WHERE pk_cu_callreport = '".$id."' RETURNING attrname INTO :mylob";
 $stmt = OCIParse($conn, $up_sql);
    $mylob = OCINewDescriptor($conn,OCI_D_LOB);
    OCIBindByName($stmt,':mylob',$mylob, -1, OCI_B_CLOB);
    // Execute the statement using OCI_DEFAULT (begin a transaction)
    OCIExecute($stmt, OCI_DEFAULT)
    or die ("Unable to execute query\n");
    if ( !$mylob->save($attrname) ) {
     OCIRollback($conn);
     echo message_and_redirect('alert', '修改失败', '/erp/list.html');
  exit;
    }
    OCICommit($conn);
    $mylob->free();
    OCIFreeStatement($stmt);
 echo message_and_redirect('alert', '修改成功', '/erp/list.html');
 exit;

http://www.oracle.com/technetwork/articles/fuecks-lobs-095315.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值