php 要運作 oracle 的 clob 時,若沒有特別去處理的話,每次增改的字串長度還是會受到限制。這方法我每次用過就會忘了, 特別記錄下來 , 以免以後又要找一遍。
( 註 : 我是採用 ADODB 的 )
假設我的 table 是這樣的 :
create table docfile (
DocID Number Not Null,
DocTitle Varchar2(100 byte),
DocCont Clob,
TX_DATE Date Default sysdate );
今天若要增加一筆 record 進去的話
$ID = 1422;
$Title = '我愛美女';
$DocCont = '我愛林志玲,隋棠,蕭薔,'.......(設有數千字 )
$sql = "insert into docfile ( DocID,DocTitle,DocCont,tx_date) values ( ";
$sql .= $ID.",'".$Title."',empty_clob(),sysdate)";
$conn->Execute($sql);
資料已 insert 進去了
然後 執行
$conn->UpdateClob('docfile','docCont',$DocCont,'docid='.$ID);
如此一來便不怕字串會有長了!
若要 update 的話, 就更簡單了, 直接執行便可
$sql = "update docfile set doccont = empty_clob() where docid = ".$ID;
$conn->Execute($sql);
$conn->UpdateClob('docfile','docCont',$DocCont,'docid='.$ID);
!!!
沒有留言:
張貼留言