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

為何中文顯示為亂碼

答題得分者是:Mickey
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-04-17 12:50:27 IP:211.23.xxx.xxx 未訂閱
我有在貴站下載了BDE的安裝程式~~安裝之後去RUN程式~~結果發現只要是有中文的地方全部都是亂碼~~可是我只要安裝了DELPHI 7就不會了~~ 我的問題是~~會產生亂碼是不是BDE造成的~~如果是的話~~我是不是少了什麼東西沒有安裝呢~~ OS: Windows 2000 ADV Server TOOL: DELPHI 7.0 BDE: 5.11 Database: SyBase -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-04-17 13:55:57 IP:61.219.xxx.xxx 未訂閱
可能是你的 'LANGDRIVER' 參數未設定正確. 1. BDE Alias 'LANGDRIVER' 參數 -> 'Paradox Taiwan 950'. 若 Alias 'LANGDRIVER' 參數未設定, 則會依照 system 的設定 : 2. run BDE Administrator -> configuration page -> system -> init -> LANGDRIVER. 最好是 2. 設定正確, 這樣以後各 BDE Alias 便可留空.
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-04-17 14:34:04 IP:211.23.xxx.xxx 未訂閱
引言: 可能是你的 'LANGDRIVER' 參數未設定正確. 1. BDE Alias 'LANGDRIVER' 參數 -> 'Paradox Taiwan 950'. 若 Alias 'LANGDRIVER' 參數未設定, 則會依照 system 的設定 : 2. run BDE Administrator -> configuration page -> system -> init -> LANGDRIVER. 最好是 2. 設定正確, 這樣以後各 BDE Alias 便可留空.
由於我的程式是在程式執行時以動態的方式指定DRIVE NAME的方式~~故在我的程式中~~我是沒有用到 ALIAS NAME 的~~ 我將我寫在 INI 檔內的參數列出來(全部都有值,有一些我把他刪掉了) [Params] DriverName=SYBASE DATABASE NAME= SERVER NAME= USER NAME= HOST NAME=server ENABLE BCD=TRUE PASSWORD= P.S: 對了~~我有照你的方法去做~~結果~~你猜~~嘻~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-04-17 14:51:06 IP:61.219.xxx.xxx 未訂閱
引言: P.S: 對了~~我有照你的方法去做~~結果~~你猜~~嘻~~
哇咧...被你逗的好癢
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-04-17 14:58:05 IP:211.23.xxx.xxx 未訂閱
引言:
引言: P.S: 對了~~我有照你的方法去做~~結果~~你猜~~嘻~~
哇咧...被你逗的好癢 < face="Verdana, Arial, Helvetica"> 嘻~~我以為你會看的懂我的意思(SORRY囉) 答案是不行啦~~還是一樣是亂碼~~ 所以我在想是不是我用DRIVE NAME而不是用ALIAS NAME的關係~~ 所以我才把參數檔的內容列出來的~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-04-17 15:28:32 IP:61.219.xxx.xxx 未訂閱
1. 用 SQL Explorer 去 Open 也是亂碼 ? 2. Sybase Version ? 3. locale.dat (%SYBASE_HOME%\locale 目錄下), [NT] Section 是不是如下:
[NT]
        locale = enu, us_english, iso_1
        locale = fra, french, iso_1
        locale = deu, german, iso_1
        locale = rus, russian, cp1251
        locale = hun, us_english, cp1250
        locale = ell, us_english, cp1253
        locale = heb, us_english, cp1255
        locale = ara, us_english, cp1256
        locale = trk, us_english, cp1254
        locale = esp, spanish, iso_1
        locale = jpn, japanese, sjis
        locale = japanese, japanese, sjis
        locale = chs, chinese, eucgb
        locale = cht, tchinese, big5
        ; locale = kor, korean, eucksc
        locale = us_english.utf8, us_english, utf8
        locale = default, us_english, iso_1
4. 下SQL : sp_configure "character" 結果如何 ? 5. BDE Administrator -> Configuration -> Drivers -> Native -> SYBASE 之 LANGDRIVER = ? 發表人 - Mickey 於 2003/04/17 15:51:38
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-04-17 16:24:11 IP:211.23.xxx.xxx 未訂閱
1. 用 SQL Explorer 去 Open 也是亂碼 ? 是地~~一樣亂碼~~可是我用ODBC去連就正常了~~好奇怪~~ 2. Sybase Version ? Ver: 12.5 3. locale.dat (%SYBASE_HOME%\locale 目錄下
[NT]
        locale = enu, us_english, iso_1
        locale = fra, french, iso_1
        locale = deu, german, iso_1
        locale = rus, russian, cp1251
        locale = hun, us_english, cp1250
        locale = ell, us_english, cp1253
        locale = heb, us_english, cp1255
        locale = ara, us_english, cp1256
        locale = trk, us_english, cp1254
        locale = esp, spanish, iso_1
        locale = jpn, japanese, sjis
        locale = japanese, japanese, sjis
        locale = chs, chinese, eucgb
        locale = cht, tchinese, big5
        ; locale = kor, korean, eucksc
        locale = us_english.utf8, us_english, utf8
        locale = default, us_english, iso_1
4. 下SQL : sp_configure "character" 結果如何 ? 一直出現語法錯誤~~不認識 sp_configure 5. BDE Administrator -> Configuration -> Drivers -> Native -> SYBASE 之 LANGDRIVER = ? 原本為空白~~可是我給他設了 Paradox Taiwan 950 ~~去RUN程式~~結果~~你再猜一下~~ (提示:不必太樂觀) -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-04-17 16:42:41 IP:61.219.xxx.xxx 未訂閱
哇咧...都得鬼. 1. 下 SQL : set char_convert off 2. select ... //有中文 Data 結果 ? 3. 下 SQL : set char_convert iso_1 4. select ... //有中文 Data 結果 ? Note : 要同一個 Connection 喔. "sp_configure" 可能只有 login user = "sa" 才有權用. 發表人 - Mickey 於 2003/04/17 16:58:25
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-04-17 17:50:42 IP:211.23.xxx.xxx 未訂閱
引言: 哇咧...都得鬼. 1. 下 SQL : set char_convert off 2. select ... //有中文 Data 結果 ? 3. 下 SQL : set char_convert iso_1 4. select ... //有中文 Data 結果 ? Note : 要同一個 Connection 喔. "sp_configure" 可能只有 login user = "sa" 才有權用. 發表人 - Mickey 於 2003/04/17 16:58:25
你的意思是不是要寫程式下去RUN啊~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-04-17 17:59:45 IP:218.32.xxx.xxx 未訂閱
不用程式, 用 SQL Explorer 下 SQL 就可以. 順便問,BDE Administrator -> Configuration -> Drivers -> Native -> SYBASE 之 DLL32 = SQLSSC32.DLL 嗎?
Jasonwong
版主


發表:49
回覆:931
積分:581
註冊:2006-10-27

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-04-18 09:56:31 IP:211.23.xxx.xxx 未訂閱
1. 下 SQL : set char_convert off 2. select ... //有中文 Data 結果: set char_convert off 會變成亂碼,改成ON就正常顯示中文了 3. 下 SQL : set char_convert iso_1 4. select ... //有中文 Data 結果:這個則沒影响,一樣正常顯示中文 5.順便問,BDE Administrator -> Configuration -> Drivers -> Native -> SYBASE 之 DLL32 = SQLSSC32.DLL 嗎? 結果:原本為SQLSYB32.DLL我已經改成SQLSSC32.DLL了 請教一下,可以跟我解釋一下上面的動作有何意思嗎? 還有~~雖然SQL EXPLEROR可以正常顯示中文~~但程式裡仍然顯示亂碼~~ -- 聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心 傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
------
聰明的人,喜歡猜心;雖然每次都猜對了,卻失去了自己的心
傻氣的人,喜歡給心;雖然每次都被笑了,卻得到了別人的心
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-04-18 10:51:47 IP:61.219.xxx.xxx 未訂閱
綜合以上 Trouble-Shooting : 1. SQLSYB32.DLL 是 DB-LIB (locale.dat 設定無效; BDE 好像從 5.x 以後不支援) 2. SQLSSC32.DLL 是 CT-LIB (這是正確的選擇) 3. Sybase SQL Server 的 CharacterSet 一定不是 iso_1 ( 因為  set char_convert off; 叫 Server 不要幫忙轉換 character, 結果用 Paradox taiwan 950 Language Driver 無法正常 Display 中文 ), 如果 Server OS 是 Windows Base, Sybase Install 時預設 CharcaterSet is  "cp850". 4. SQL Expolrer 能正常, Application 應該也可以...有重新 Bulid Application 過嗎 ? 我沒有你的環境, 細節可能需要自己 Try...有問題再 po
系統時間:2024-07-01 4:53:33
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!