使用TStream處理CLOB filed資料 有size的限制? |
缺席
|
shoda
一般會員 發表:1 回覆:0 積分:0 註冊:2006-10-17 發送簡訊給我 |
我要從 oracle 的 CLOB 欄位中讀取資料 翻了一下之前的文章都建議使用 TStream
但是我想將 TStream 的資料丟到 char* 型態 再給另一個 parser 作處理 但是實作上使用 TStream->ReadBuffer() 時會遇到 TStream 的 Size 限制(type: int) 而無法將資料完整地讀取出來使用 想請教各位該如何解決這個問題?程式片段如下: AnsiString sSQL("SELECT * FROM test_clob "); cQuery->Close(); cQuery->SQL->Clear(); cQuery->SQL->Add(sSQL); cQuery->Prepare(); cQuery->Open(); while (!cQuery->Eof) { if (cQuery->FieldByName("F2")->IsBlob()) { TStream* Stream; // 我的程式在這邊要將 TStream 的資料讀進 buffer 卻遇到 TStream Size 的限制 Stream = cQuery->CreateBlobStream(cQuery->FieldByName("F2"), bmRead); void* buffer = malloc(Stream->Size); Stream->ReadBuffer(buffer, Stream->Size); free(buffer); } cQuery->Next(); } |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |