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

執行delphi程式時遇到大量資料(10000)時會出現 ' 'General SQL error.

尚未結案
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-20 19:30:05 IP:203.69.xxx.xxx 未訂閱
執行delphi程式時遇到大量資料(10000)時會出現 'General SQL error. ct_cusor() :user api layer.external error.The connection ha been marked dead' 但處理筆數少時就不會出現此訊息, 使用sysbase資料庫 不曉有什麼方式可以不被離線,及改善,是程式寫的技巧有問題嗎?還是別的問題?
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-20 22:26:48 IP:63.84.xxx.xxx 未訂閱
引言: 執行delphi程式時遇到大量資料(10000)時會出現 'General SQL error. ct_cusor() :user api layer.external error.The connection ha been marked dead' 但處理筆數少時就不會出現此訊息, 使用sysbase資料庫 不曉有什麼方式可以不被離線,及改善,是程式寫的技巧有問題嗎?還是別的問題?
您好! 請問您使用何種存取技術? ===================== 努力,相信會獲得美麗! 忻晟 發表人 - cashxin2002 於 2003/08/20 22:29:26
------
忻晟
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-21 13:18:18 IP:203.69.xxx.xxx 未訂閱
引言:
引言: 執行delphi程式時遇到大量資料(10000)時會出現 'General SQL error. ct_cusor() :user api layer.external error.The connection ha been marked dead' 但處理筆數少時就不會出現此訊息, 使用sysbase資料庫 不曉有什麼方式可以不被離線,及改善,是程式寫的技巧有問題嗎?還是別的問題?
您好! 是用BDE->dataset-> 用TQUERY的SQL抓DATA 請問您使用何種存取技術? ===================== 努力,相信會獲得美麗! 忻晟 發表人 - cashxin2002 於 2003/08/20 22:29:26
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-08-21 17:04:45 IP:63.84.xxx.xxx 未訂閱
您好﹗    提些建議﹐您參考看看﹗    請開啟BDE Administrator檢查一下系統存取SYBASE資料庫的設定    在Configuration頁次/Configuration/Drivers/Native/SYBASE﹐Definition頁中﹕ MAX ROWS 值請設為-1 此欄位是指定每次執行SQL指令所傳回的資料筆數上限值﹐若超出此限制就會傳回錯誤訊息﹐-1代表無限制 MAX QUERY TIME 的預設值為300﹐可調整大一些 此欄位指定BDE等待SQL指令執行完成的時間值﹐若超過此期間則取消查詢動作 TIMEOUT 的預設值為300﹐可調整大一些 此欄位指定BDE等待資料庫回傳訊息的時間值﹐如果提出需求之后在指定時間內無法獲得回應則回傳錯誤訊息 并請更新對應SYBASE資料庫之別名設定﹗ 小弟淺見﹗以上幾點供您參考﹗ ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-08-21 17:51:19 IP:203.69.xxx.xxx 未訂閱
引言: 您好﹗ 提些建議﹐您參考看看﹗ 請開啟BDE Administrator檢查一下系統存取SYBASE資料庫的設定 在Configuration頁次/Configuration/Drivers/Native/SYBASE﹐Definition頁中﹕ MAX ROWS 值請設為-1 此欄位是指定每次執行SQL指令所傳回的資料筆數上限值﹐若超出此限制就會傳回錯誤訊息﹐-1代表無限制 MAX QUERY TIME 的預設值為300﹐可調整大一些 此欄位指定BDE等待SQL指令執行完成的時間值﹐若超過此期間則取消查詢動作 TIMEOUT 的預設值為300﹐可調整大一些 此欄位指定BDE等待資料庫回傳訊息的時間值﹐如果提出需求之后在指定時間內無法獲得回應則回傳錯誤訊息 并請更新對應SYBASE資料庫之別名設定﹗ 小弟淺見﹗以上幾點供您參考﹗ ===================== 努力,相信會獲得美麗! 忻晟
1:那在DATABASE 頁,的Definition頁次設定與 Configuration頁次/Configuration/Drivers/Native/SYBASE﹐Definition頁中﹕ 有什麼不同?因我本來就在USER的BDE->DATABASE 頁,的Definition頁次設定 MAX ROWS 值請設為-1 MAX QUERY TIME 的預設值為300﹐ 只是此DATABASE 頁->Definition頁次沒TIMEOUT 可設定
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-08-21 18:00:54 IP:63.84.xxx.xxx 未訂閱
您好﹗    1﹒那在DATABASE 頁,的Definition頁次設定與Configuration頁次/ Configuration/Drivers/Native/SYBASE﹐Definition頁中有什麼不同 前者是您目前指定資料庫的別名之系統設定﹒對其它的同資料庫形態別名系統設定沒有影響﹒后者是BDE Administrator中所有之SYBASE之系統設定﹐此處設定完之后﹐重新建立的別名都會照此系統設定值產生﹒ 2﹒MAX ROWS 值請設為-1 MAX QUERY TIME 的預設值為300只是此DATABASE 頁-Definition頁次沒TIMEOUT 可設定 TIMEOUT設定只在Configuration頁次/ Configuration/Drivers/Native/SYBASE 才有﹒您可以試著調整得大一些 參考看看﹗ ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-08-21 18:14:31 IP:203.69.xxx.xxx 未訂閱
引言: 您好﹗ 1﹒那在DATABASE 頁,的Definition頁次設定與Configuration頁次/ Configuration/Drivers/Native/SYBASE﹐Definition頁中有什麼不同 前者是您目前指定資料庫的別名之系統設定﹒對其它的同資料庫形態別名系統設定沒有影響﹒后者是BDE Administrator中所有之SYBASE之系統設定﹐此處設定完之后﹐重新建立的別名都會照此系統設定值產生﹒ 2﹒MAX ROWS 值請設為-1 MAX QUERY TIME 的預設值為300只是此DATABASE 頁-Definition頁次沒TIMEOUT 可設定 TIMEOUT設定只在Configuration頁次/ Configuration/Drivers/Native/SYBASE 才有﹒您可以試著調整得大一些 參考看看﹗ ===================== 努力,相信會獲得美麗! 忻晟
:那是依那個設定run,是DATABASE 頁,的Definition頁次設定 or Configuration頁次/ Configuration/Drivers/Native/SYBASE﹐Definition頁 設定 因我的Configuration頁次/ Configuration/Drivers/Native/SYBASE﹐Definition頁 本來就設定 MAX ROWS 值請設為-1 MAX QUERY TIME 的預設值為300﹐ TIMEOUT 的預設值為300﹐ 是不是主要把MAX QUERY TIME及TIMEOUT再設大一點就可以? 2:會不會影響系統的速度?
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-08-21 18:25:21 IP:63.84.xxx.xxx 未訂閱
您好﹗    這是小弟根据Error Message的內容而想到是否會和BDE的設定問題有關﹐是否就此可行﹐小弟也不得知﹐因手頭沒有SYBASE﹐做不了測試﹒    因為DATABASE頁次的Definition頁設定中﹐沒有TIMEOUT﹐所以只能在Configuration頁次/Configuration/Drivers/Native/SYBASE﹐Definition頁做設定(也可同時設定另兩個系統設定欄位)﹐然后需重新建立別名﹐此設定才會有效﹒    參考看看﹗    ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-08-22 09:46:06 IP:203.69.xxx.xxx 未訂閱
引言: 您好﹗ 這是小弟根据Error Message的內容而想到是否會和BDE的設定問題有關﹐是否就此可行﹐小弟也不得知﹐因手頭沒有SYBASE﹐做不了測試﹒ 因為DATABASE頁次的Definition頁設定中﹐沒有TIMEOUT﹐所以只能在Configuration頁次/Configuration/Drivers/Native/SYBASE﹐Definition頁做設定(也可同時設定另兩個系統設定欄位)﹐然后需重新建立別名﹐此設定才會有效﹒ 參考看看﹗ ===================== 努力,相信會獲得美麗! 忻晟
300000單位是什麼是秒嗎? 我已設MAX QUERY TIME及TIMEOUT:300000,還是一樣,不曉是什麼問題?
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-08-24 21:09:17 IP:218.165.xxx.xxx 未訂閱
請問一下妳的資料庫是哪種?? <>< face="Verdana, Arial, Helvetica">引言: 300000單位是什麼是秒嗎? 我已設MAX QUERY TIME及TIMEOUT:300000,還是一樣,不曉是什麼問題?
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-08-25 08:41:17 IP:203.69.xxx.xxx 未訂閱
引言: 請問一下妳的資料庫是哪種?? <>< face="Verdana, Arial, Helvetica">引言: 300000單位是什麼是秒嗎? 我已設MAX QUERY TIME及TIMEOUT:300000,還是一樣,不曉是什麼問題?
sysbase
系統時間:2024-10-03 21:41:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!