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

簡體字回存的問題

答題得分者是:aftcast
shunaaron
高階會員


發表:13
回覆:94
積分:106
註冊:2006-10-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-10-15 12:26:18 IP:123.115.xxx.xxx 訂閱
小弟是用Delphi 6開發
在繁體作業系統時,查詢或存回的資料是簡體字時,都可以正常運行
但到簡體作業系統時,查詢資料出來時是正常的
但存回去時會變成問號
請問還有哪些要設定或是別的方式的呢。。除了用D2009之外
謝謝
------
程式沒有這麼難
只是還沒打通其中要絕
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-10-15 14:48:56 IP:61.67.xxx.xxx 未訂閱
請用關鍵字 unicode 查詢本站, 應可得到滿意的答案
pceyes
尊榮會員


發表:70
回覆:657
積分:1140
註冊:2003-03-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-10-15 17:01:33 IP:220.141.xxx.xxx 訂閱
之前,在版上看到有人說,CRYSTAL REPORT不支持UniCode,請教一位先進,他的回答是,不是不支持,那要看資料庫本身支不支持Unicode。
就個人經驗,如果資料庫確定支持Unicode,而且您有使用TntWare(TntDbEdit..)來存入資料庫就可以存取。
另一種情形,好像Sql資料庫需要特別設定編碼方式,您可以在版上找找看。
------
努力會更接近成功
shunaaron
高階會員


發表:13
回覆:94
積分:106
註冊:2006-10-06

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-10-15 18:05:50 IP:123.115.xxx.xxx 訂閱
有先找過相關資料了
但是仍有些小問題存在
如資料輸入 图 這個字而已
目前利用補上空白方式來解決這問題
但仍會是到簡體OS時,
當查詢時就會有問題
在簡體OS顯示的是問號
但在繁體OS是正常的
謝謝

參考的文章如下
http://delphi.ktop.com.tw/board.php?cid=30&fid=66&tid=48121
http://delphi.ktop.com.tw/board.php?cid=30&fid=67&tid=28163
===================引 用 P.D. 文 章===================
請用關鍵字 unicode 查詢本站, 應可得到滿意的答案
------
程式沒有這麼難
只是還沒打通其中要絕
aftcast
站務副站長


發表:81
回覆:1485
積分:1763
註冊:2002-11-21

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-10-15 18:18:10 IP:60.248.xxx.xxx 訂閱
請問用什麼資料庫? 用什麼編碼? ui用什麼元件?
某些資料庫在connection設定上需要調整編碼(屬於資料庫上的設定和程式無關),如PostgreSQL
告知後方便協助!
------


蕭沖
--All ideas are worthless unless implemented--

C++ Builder Delphi Taiwan G+ 社群
http://bit.ly/cbtaiwan
shunaaron
高階會員


發表:13
回覆:94
積分:106
註冊:2006-10-06

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-10-15 18:53:19 IP:123.115.xxx.xxx 訂閱
資料庫-MSSQL
資料庫編號是:繁體,程式是用預設(是這問題嗎?但台灣目前系統都在Run,沒法測)
元件是以TMS和Tnt為主
connection要怎調整呢?
謝謝
===================引 用 aftcast 文 章===================
請問用什麼資料庫? 用什麼編碼? ui用什麼元件?
某些資料庫在connection設定上需要調整編碼(屬於資料庫上的設定和程式無關),如PostgreSQL
告知後方便協助!
------
程式沒有這麼難
只是還沒打通其中要絕
aftcast
站務副站長


發表:81
回覆:1485
積分:1763
註冊:2002-11-21

發送簡訊給我
#7 引用回覆 回覆 發表時間:2008-10-22 05:42:07 IP:59.115.xxx.xxx 訂閱
近來太忙,現在才回覆…
看了你參考的那篇
http://delphi.ktop.com.tw/board.php?cid=30&fid=66&tid=48121

我發現那篇還是沒有真的解決問題! 而問題的根源在於 Ado元件上的字串都是unicode的,也就是說是WideString類別的。
看那篇的發問人等寫到…
tmp : = 'insert........';
adoCmd.CommandText := tmp;
這樣就錯了!

我太久沒寫delphi了,目前都是用bcb再寫程式。下面的語法可能有點錯,但觀念才是正確的。
ws : WideString; //這裡是非常非常重要的重點
get_from_user : WideString;

get_from_user := Tnt.........;
ws := 'insert into test Values (N'''; //要用到N
ws := ws get_from_user;
ws := ws ''')';
adoCmd.CommandText := ws;

在bcb裡我可以把上面的字串相加寫的簡單一點,參考一下
ws = L"insert into test values (N\"" get_from_user L"\")";

ps mssql那裡要配合 nvarchar 型別

我在許多編碼上轉換有相當的經驗和了解,問題的答案應該沒錯。無論成或敗還請回覆一下好來個教學相長!


------


蕭沖
--All ideas are worthless unless implemented--

C++ Builder Delphi Taiwan G+ 社群
http://bit.ly/cbtaiwan
編輯記錄
aftcast 重新編輯於 2008-10-22 05:53:57, 註解 無‧
aftcast 重新編輯於 2008-10-22 05:58:48, 註解 無‧
aftcast 重新編輯於 2008-10-22 05:59:48, 註解 無‧
shunaaron
高階會員


發表:13
回覆:94
積分:106
註冊:2006-10-06

發送簡訊給我
#8 引用回覆 回覆 發表時間:2008-10-22 17:42:50 IP:123.115.xxx.xxx 訂閱
感謝大大
之前有試過用N的~
原來我放錯了地方了~感謝說明
SQL := ' insert into tt Values ( N' QUotedStr('体') ' ) ';
謝謝
===================引 用 aftcast 文 章===================
近來太忙,現在才回覆…
看了你參考的那篇
http://delphi.ktop.com.tw/board.php?cid=30&fid=66&tid=48121

我發現那篇還是沒有真的解決問題! 而問題的根源在於 Ado元件上的字串都是unicode的,也就是說是WideString類別的。
看那篇的發問人等寫到…
tmp : = 'insert........';
adoCmd.CommandText := tmp;
這樣就錯了!

我太久沒寫delphi了,目前都是用bcb再寫程式。下面的語法可能有點錯,但觀念才是正確的。
ws : WideString; //這裡是非常非常重要的重點
get_from_user : WideString;

get_from_user := Tnt.........;
ws := 'insert into test Values (N'''; //要用到N
ws := ws get_from_user;
ws := ws ''')';
adoCmd.CommandText := ws;

在bcb裡我可以把上面的字串相加寫的簡單一點,參考一下
ws = L"insert into test values (N\"" get_from_user L"\")";

ps mssql那裡要配合 nvarchar 型別

我在許多編碼上轉換有相當的經驗和了解,問題的答案應該沒錯。無論成或敗還請回覆一下好來個教學相長!


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