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

用 BDE 連接 MSSQL2005 碰到 DBMemo 內容亂碼問題

尚未結案
bestlong
站務副站長


發表:126
回覆:734
積分:512
註冊:2002-10-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-09-06 11:35:47 IP:60.248.xxx.xxx 訂閱
近來在處理資料庫升級
資料庫是由SQL6.5用SQL2000的升級精靈異機升級到SQL2000
然後在SQL2000離線後複製到SQL2005附加上去的
而原本程式在MSSQL6.5與MSSQL2000時環境下操作都正常
不過當改連接到MSSQL2005後發現有部分資料的DBMemo內容卻出現亂碼的狀況

連日來的找尋問題的癥結,終於歸納出最簡單重現問題的方式
建立一個新專案用 BDE 的 TDatabase TTable 連接資料庫
當 TableName 屬性設定 TBName 時就 DBMemo 就會有部分資料顯示亂碼
若 TableName 屬性設定 dbo.TBName 就會完全正常
以上狀況在D5,D6,D7結果都一樣

想要解決的話有兩個方向:
1.改用其它資料庫元件,這樣整個系統要重寫,風險最大。
2.重設所有資料元件 Table.TableName屬性以及 Query.SQL 屬性的語法,風險次大。

目前先繼續尋找比較簡易的解決方法中,不知是否有人碰過這個問題呢?
------
http://blog.bestlong.idv.tw/
http://www.bestlong.idv.tw/
http://delphi-ktop.bestlong.idv.tw/
編輯記錄
bestlong 重新編輯於 2007-09-06 13:17:30, 註解 無‧
Mickey
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-09-19 15:20:58 IP:218.163.xxx.xxx 訂閱
我沒遇過這問題...

不過...有點好奇...

如果用 TQuery.SQL ... select * from dbo.TBName 與 select * from TBName ... 也有此問題嗎 ?
bestlong
站務副站長


發表:126
回覆:734
積分:512
註冊:2002-10-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-09-20 15:00:13 IP:60.248.xxx.xxx 訂閱
使用 TQuery 就沒有亂碼問題,不過使用 TQuery 就會碰到 invalid blob handle in record buffer 的問題
因為資料量很多所以 BLOB CACHE 會被塞爆,雖然可以加大 CACHE 設定,卻會導致執行速度會超級慢。

目前的想法只能暫時升級到 SQL2000 就好,然後開始全面改用 ADO 處理
修改完畢後再升級到 SQL2005 吧。
------
http://blog.bestlong.idv.tw/
http://www.bestlong.idv.tw/
http://delphi-ktop.bestlong.idv.tw/
Mickey
版主


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-09-20 16:18:30 IP:218.163.xxx.xxx 訂閱
invalid blob handle in record buffer 的問題

不是很確定...記憶力不好...

好像...用 Transaction 包裝...可以避免之

另外....我記得...似乎 TTable 即使用 TDatabase...也會有..."獨立"..的 Session(從DB "select count(*) from master.dbo.sysprocesses")....盡量避免之

===================引 用 bestlong 文 章===================
使用 TQuery 就沒有亂碼問題,不過使用 TQuery 就會碰到 invalid blob handle in record buffer 的問題
因為資料量很多所以 BLOB CACHE 會被塞爆,雖然可以加大 CACHE 設定,卻會導致執行速度會超級慢。

目前的想法只能暫時升級到 SQL2000 就好,然後開始全面改用 ADO 處理
修改完畢後再升級到 SQL2005 吧。
系統時間:2024-05-17 17:34:48
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!