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

查詢中文字有些字會出錯..

尚未結案
pika2005
初階會員


發表:27
回覆:48
積分:25
註冊:2005-02-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-27 07:45:55 IP:218.162.xxx.xxx 未訂閱
小弟查詢中文字時,有時出來的結果,是錯的..有時則沒問題.. 欄位型態是Alpha..我不清楚這型態是什麼意思.. 查英文都沒問題.. 底下是我所用語法..請問查中文字時會出問題嗎.. PS:我一直都強調我對資料庫的常識有待加強.. SearchQuery[Searchi]->SQL->Add("Select * From '"+ComboBox1->Text+"' Where upper("+ComboBox2->Text+") Like upper('%"+Edit1->Text+"%')");    有問題的結果:有些沒"鬼"字 正確的結果 發表人 - pika2005 於 2005/03/27 08:01:45
wyndog
資深會員


發表:7
回覆:362
積分:348
註冊:2004-10-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-28 09:09:06 IP:60.248.xxx.xxx 未訂閱
Alpha 就是指這個欄位的型態是屬於文字型式的 另外,就是可能得請你說出使用的資料庫為何? 我個人覺得應該是資料庫的中文相容性不佳造成的
pika2005
初階會員


發表:27
回覆:48
積分:25
註冊:2005-02-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-28 16:55:03 IP:218.162.xxx.xxx 未訂閱
引言: Alpha 就是指這個欄位的型態是屬於文字型式的 另外,就是可能得請你說出使用的資料庫為何? 我個人覺得應該是資料庫的中文相容性不佳造成的
reptile您好,我所用的資料庫是Paradox..
wyndog
資深會員


發表:7
回覆:362
積分:348
註冊:2004-10-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-29 10:57:13 IP:60.248.xxx.xxx 未訂閱
你好,我確定是中文相容問題了 不過,我隨意製造了一個 Paradox 資料庫 使用 BDE Delphi7 or BDE BCB6 查詢有問題的關鍵字 結果是 OK 的 所以我也不曉得為何你會有這個問題 如果你也是採用 BDE 的話,建議你去看看 Language Driver 的部份 是不是繁體中文 (Paradox Taiwan 950) 或者是你採用的 OS 不是中文版的?
pika2005
初階會員


發表:27
回覆:48
積分:25
註冊:2005-02-17

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-03-29 20:48:15 IP:218.162.xxx.xxx 未訂閱
引言: 你好,我確定是中文相容問題了 不過,我隨意製造了一個 Paradox 資料庫 使用 BDE Delphi7 or BDE BCB6 查詢有問題的關鍵字 結果是 OK 的 所以我也不曉得為何你會有這個問題 如果你也是採用 BDE 的話,建議你去看看 Language Driver 的部份 是不是繁體中文 (Paradox Taiwan 950) 或者是你採用的 OS 不是中文版的?
reptile您好,我照底下的連結沒找到Language Driver選項, 不知道是不是這個..DataDase Desktop->Tools->Alias Manager 裡的Driver type..還有Paradox Taiwan 950我也沒找到... BDE設定問題 http://delphi.ktop.com.tw/topic.php?topic_id=21327 發表人 - pika2005 於 2005/03/29 20:51:23
wyndog
資深會員


發表:7
回覆:362
積分:348
註冊:2004-10-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-03-29 21:25:44 IP:61.64.xxx.xxx 未訂閱
我說的設定是:    [控制台] -> [BDE Administrator]    
pika2005
初階會員


發表:27
回覆:48
積分:25
註冊:2005-02-17

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-03-30 00:08:03 IP:218.162.xxx.xxx 未訂閱
引言: 我說的設定是: [控制台] -> [BDE Administrator]
Hi..我的Language Driver 設定符合你說的.. 後來我試了查詢資料比較少的..沒有問題.. 因為我之前查那筆資料是好幾萬筆,讓我不得不懷疑是跟資料量大小有關, 請問有關係嗎..
wyndog
資深會員


發表:7
回覆:362
積分:348
註冊:2004-10-12

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-03-30 09:41:36 IP:60.248.xxx.xxx 未訂閱
引言: Hi..我的Language Driver 設定符合你說的.. 後來我試了查詢資料比較少的..沒有問題.. 因為我之前查那筆資料是好幾萬筆,讓我不得不懷疑是跟資料量大小有關, 請問有關係嗎..
其實,我那時候也是把 Language Driver 改成 ASCII... 還是查的出來,不過,除了這地方外,我也想不出來問題在哪 我解釋一下那個問題在哪,已知,一個中文字是 2bytes 你查「鬼」會出問題,是因為「陸」的後半段,跟「軍」的前半段 正好是一個「鬼」,而你是查 「%鬼%」,所以就連「陸軍」一起查進來了 這樣,怎麼看,都會覺得是 Database Driver 的問題 所以,應該不存在資料大小的問題 除非 Database Engine 是用資料量來決定他查詢時的精準度的 (不過,我覺得這個可能性還是不高) 啊,忘了問 OS 版本了 因為 Win95/98 都不算是 Unicode 核心,我再試試看 98 我是用 XP 幫你試的... 而且,資料量說真的也不大.....
pika2005
初階會員


發表:27
回覆:48
積分:25
註冊:2005-02-17

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-03-31 07:13:54 IP:220.141.xxx.xxx 未訂閱
引言:
引言: Hi..我的Language Driver 設定符合你說的.. 後來我試了查詢資料比較少的..沒有問題.. 因為我之前查那筆資料是好幾萬筆,讓我不得不懷疑是跟資料量大小有關, 請問有關係嗎..
其實,我那時候也是把 Language Driver 改成 ASCII... 還是查的出來,不過,除了這地方外,我也想不出來問題在哪 我解釋一下那個問題在哪,已知,一個中文字是 2bytes 你查「鬼」會出問題,是因為「陸」的後半段,跟「軍」的前半段 正好是一個「鬼」,而你是查 「%鬼%」,所以就連「陸軍」一起查進來了 這樣,怎麼看,都會覺得是 Database Driver 的問題 所以,應該不存在資料大小的問題 除非 Database Engine 是用資料量來決定他查詢時的精準度的 (不過,我覺得這個可能性還是不高) 啊,忘了問 OS 版本了 因為 Win95/98 都不算是 Unicode 核心,我再試試看 98 我是用 XP 幫你試的... 而且,資料量說真的也不大.....
Hi.我去查查Database Briver這方面的設定..thx
系統時間:2024-05-20 21:22:35
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!