Access 欄位型態:備忘,我無法更新 |
尚未結案
|
lanbome
一般會員 發表:46 回覆:28 積分:14 註冊:2003-07-03 發送簡訊給我 |
請教各位,當我新增一筆資料(超過255個字元)進去備忘型態欄位是沒有問題,但是當我要更新此筆資料時,如果更新的資料在255個字元以內沒有問題,但更新的資料超過255個字元時就會出現下列的錯誤訊息,有誰能幫我回答一下到底是那裡出錯了呢 ?
以下是我的錯誤訊息:
porject project1.exe raised exception class EDBEngineError with message'Genenral SQL error.
[Microsoft][ODBC Microsoft Access Driver]無效的描述器索引
[Microsoft][ODBC Microsoft Access Driver]無效的精確度數值。
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
您是怎麼修改的?參考:
http://www.q3.nu/trucomania/truco.cgi?128&ing
http://codecentral.borland.com/codecentral/ccweb.exe/listing?id=507
{ Move data from TMemofield to a TMemo } function TableMemoToMemo(var tMmoField : TMemoField; var tMmo : TMemo) : boolean; var bs : TBlobStream; p : pointer; mSize : integer; begin result := FALSE; try bs := TBlobStream.create(tMmoField,bmRead); if bs = NIL then exit; mSize := bs.size 1; GetMem(p,mSize); if p = NIL then begin bs.free; exit; end; fillchar(p^,mSize,0); bs.read(p^,mSize); tMmo.SetTextBuf(pchar(p)); FreeMem(p,mSize); tMmo.enabled := TRUE; bs.free; result := TRUE; except on e : EDatabaseError do showMessage(e.message); end; end; { Move data from TMemo to a TMemofield } function MemoToTableMemo(var tMmo : TMemo; var tMmoField : TMemoField) : boolean; var bs : TBlobStream; p : Pointer; mSize : integer; begin result := FALSE; if (tMmo = NIL) or (tMmoField = NIL) then exit; try bs := TBlobStream.create(tMmoField,bmWrite); if bs = NIL then exit; mSize := tMmo.GetTextLen 1; GetMem(p,mSize); if p = nil then begin bs.free; exit; end; fillchar(p^,mSize,0); tMmo.GetTextBuf(pchar(p),mSize); bs.write(p^,mSize); FreeMem(p,mSize); bs.free; result := true; except on e : EDatabaseError do showMessage(e.message); end; end;發表人 - hagar 於 2004/06/14 08:15:02 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |