線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1398
推到 Plurk!
推到 Facebook!

客戶端與伺服端中文平台不同, 查詢資料的問題

答題得分者是:P.D.
hubblev2
一般會員


發表:5
回覆:5
積分:2
註冊:2007-11-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-11-23 13:56:54 IP:61.219.xxx.xxx 訂閱
請問:
我使用D5
伺服端 DATABASE MS-SQL 2000, O.S. 繁體中文
客戶端 簡體中文 透過ADO 存取資料 Connection String 設定 Auto Translate=False
在伺服端的MS-SQL 所儲存的資料已轉為GBK, 在客戶端 用簡體存取資料和儲存資料都正常
只是, 我想從客戶端發出查詢, 例如 select * from Customer where C_Name like '%我行我素%'
在客戶端 輸入客戶資料時, 是以簡體字 /我行我素/ 輸入, 若我將在客戶端輸入條件 : 我行我素
轉成 SQL 字串, 送入 ADOQuery 的SQL 查詢資料, 怎麼樣都查不到資料
若我在客戶端 Query Analyzer 查詢, 發現SQL 將資料內容'我行我素'當作繁體字, 又轉成簡體(等於轉了兩次BIG->GB)
但是, 如果我在[工具]-->[選項]-->[連線]中 [執行對自原資料的轉譯]取消, 資料內容確為/我行我素'/
但是, 我下的SQL 指令select * from Customer where C_Name like '%我行我素%'
還是查不到任何資料
請問:
1. 我必須如何設定, 才能使資料不會被轉碼?
2. 如果(1) 無法避免, 是否有Transact-SQL的函數, 能將客戶端傳來的字串, 轉成SQL Server轉碼相符的字串
若是我們自己寫簡繁碼轉換, 有些原本是GBK碼的字, 再轉一次簡體, 會變成亂碼, 還是查不到
------
DanielHubble
P.D.
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-11-24 23:27:56 IP:61.67.xxx.xxx 未訂閱
看起來你似乎遭遇unicode的狀況, 建議你程式介面的輸入方式找找看 TNTware 的套件, 可以使用unicode 功能, 或在本站搜尋unicode 或tnt 關鍵字
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-11-25 06:49:48 IP:75.18.xxx.xxx 未訂閱
Some discussions have talked about this situation, to say in a word, the VCL components haven't supported Unicode, here is a suggestion and shows you how to install.
hubblev2
一般會員


發表:5
回覆:5
積分:2
註冊:2007-11-20

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-11-27 08:51:59 IP:61.219.xxx.xxx 訂閱
謝謝兩位的指導.
------
DanielHubble
wuabc
初階會員


發表:6
回覆:60
積分:33
註冊:2002-10-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-11-28 10:26:06 IP:203.204.xxx.xxx 訂閱

===================引 用 P.D. 文 章===================
看起來你似乎遭遇unicode的狀況, 建議你程式介面的輸入方式找找看 TNTware 的套件, 可以使用unicode 功能, 或在本站搜尋unicode 或tnt 關鍵字

感覺上原Post不像是Unicode的問題,
但Hubblev2兄問題顯然已經解決了,
是否願意分享一下解決的方法?
編輯記錄
wuabc 重新編輯於 2007-11-28 10:27:15, 註解 無‧
系統時間:2024-05-05 4:46:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!