 |
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
Abel
註冊時間: 2005-03-14 文章: 189 來自: 鹿港小鎮
第 1 樓
|
發表於: 星期四 四月 06, 2006 2:25 pm 文章主題: 用 sqlconnect(),SQLstringconnect() 函數來進行測試是否連線,結果都傳回小於 0 |
|
|
各位大大請幫幫,謝謝各位 大大 大大
因為要去除因連線上的錯誤,不讓程式中斷(死在那裡!)
找了許多的資料,因為小弟程度實在太差,所以使用
sqlconnect(),SQLstringconnect() 函數來進行測試 …
結果在 client 測試時,出現了奇怪的錯誤,就是傳回值都小於 0,
(不論是否設定 odbc,或是已經事先連通了後端的 servre,它們的傳回值都小於 0,
但是在自己的開發系統內又能正常…,所以我就 …,
或是有什麼替代方法,不讓程式因無法連線而死在那裡。)
程式環境如下:
開發程式vfp9, 使用 remote view 經 odbc 在 len 中叫用,
程式置於 client, dataserver 為 SQL 2000,
程式由一個 prg 然後 Do 一個 Form,
以下就是 prg 程式,而我就是在這裡使用
sqlconnect(),SQLstringconnect()來進行測試…
Set Confirm Off
SET SAFETY OFF
Clear
Close All
Clear All
Release All
Wait Window "搜尋 遠端伺服 資料來源 … …"+Chr(13)+"請稍後!" At 15,45 Nowait Noclear
nConnectHandle = Sqlstringconnect("DSN=Server1;Uid=sa;pwd=xxx;database=HONEY123")
*nConnectHandle = Sqlconnect('Server1','sa','xxx') && 這兩種都傳回小於 -1 值
If nConnectHandle < 0
Messagebox('很抱歉!目前無法提供連線,請您檢查連線設備與設定 … '+Chr(13)+Chr(13)+;
'或是連絡 企劃部 Abel,謝謝',0+16,','程式無法順利執行')
Else
SQLDisconnect(nConnectHandle)
Endif
If nConnectHandle > 0
On Shutdown Clear Events
Do Form sell_count Name Main Linked
Wait Clear
Read Events
Wait Window "中斷 遠端伺服 資料來源 … …"+Chr(13)+"請稍後!" At 15,35 Nowait Noclear
On Shutdown
Endif
Close All
Clear All
Wait Clear
Quit
Release All |
|
回頂端 |
|
 |
garfield Site Admin

註冊時間: 2003-01-30 文章: 2160
第 2 樓
|
發表於: 星期四 四月 06, 2006 2:59 pm 文章主題: |
|
|
將
nConnectHandle = Sqlstringconnect("DSN=Server1;Uid=sa;pwd=xxx;database=HONEY123")
改用
nConnectHandle = Sqlstringconnect("DRIVER=SQL Server;SERVER=主機名稱或IP;UID=sql的使用者;PWD=你的密碼;DATABASE=後端資料庫;Trusted_Connection=no")
或是採用信任連線
nConnectHandle = Sqlstringconnect("DRIVER=SQL Server;SERVER=主機名稱或IP;DATABASE=後端資料庫;Trusted_Connection=yes")
MsSql 2005 則用
nConnectHandle = Sqlstringconnect("DRIVER=SQL Native Client;SERVER=主機名稱\sqlExpress;Trusted_Connection=Yes;DATABASE=後端資料庫;")
另外可以事先設定
SQLSETPROP(0,'ConnectTimeOut',3) &&--等3秒 + 前後處理時間 ? 秒
再去做連線的動作,
則在萬一不能連線的情形下,
電腦會比較快做出錯誤的回應. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
 |
Abel
註冊時間: 2005-03-14 文章: 189 來自: 鹿港小鎮
第 3 樓
|
發表於: 星期五 四月 07, 2006 12:20 pm 文章主題: |
|
|
真的十分感謝 garfied 大大的指導,您真是我的明燈、偶像
修正 DRIVER=SQL Server 再加上 Trusted_Connection=no
就可以正常傳回傳回值,而不是永遠的 -1
謝謝您的協助,獻上最敬禮 ~ |
|
回頂端 |
|
 |
garfield Site Admin

註冊時間: 2003-01-30 文章: 2160
第 4 樓
|
發表於: 星期五 四月 07, 2006 5:11 pm 文章主題: |
|
|
您太客氣了.
明燈不敢當,
只是螢火之光.
照亮一點點小路而已. ^^ _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
 |
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|