全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1294
推到 Plurk!
推到 Facebook!

關於資料庫型別資料

 
jimlee
一般會員


發表:16
回覆:13
積分:5
註冊:2005-07-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-08-02 13:44:54 IP:211.21.xxx.xxx 未訂閱

Hi,

目前我有個資料表,其中有欄位的型別是binary,

我利用ADOquery1.FieldByName('XXX').AsString顯示欄位內容,

但目前發生一個問題就是:中文部份無法正確顯示。

因為顯示出來的部份是亂碼。試問我該如何讓它正確顯示中文字呢?

謝謝。

pgdennis
資深會員


發表:41
回覆:526
積分:443
註冊:2002-05-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-08-03 13:40:42 IP:218.163.xxx.xxx 未訂閱
1.不用db-aware元件? 拉dbmemo就顯示

2.

sm:=TmemoryStream.Create;
TblobField(ADOQuery1.fielybyname('ABC')).SaveToStream(Sm);
YourMemo.Lines.LoadFromStream(sm);
sm.Free;

二進位型態的欄位皆不能用asstring,asinteger...等
------
星期一,二...無窮迴圈@@
jimlee
一般會員


發表:16
回覆:13
積分:5
註冊:2005-07-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-08-03 14:46:14 IP:211.21.xxx.xxx 未訂閱

pgdennis大大,

我使用了你的方法,但會出現"Invalid class typecast"

SQL Server的欄位型態則是binary,

用ADOquery1.FieldByName的datatype所取得型態是ftBytes,不是ftBlob,

不知該如何解決呢?

pgdennis
資深會員


發表:41
回覆:526
積分:443
註冊:2002-05-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2006-08-10 11:37:04 IP:218.163.xxx.xxx 未訂閱

拍謝看太快了..

TBytesField本身就有提供asstring方法......我這邊測試中文倒是可以正常顯示=..=

------
星期一,二...無窮迴圈@@
系統時間:2024-06-24 20:56:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!