VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

CursorAdapter 跟 Transactions

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
pilipala



註冊時間: 2009-05-13
文章: 75


第 1 樓

發表發表於: 星期三 五月 13, 2009 1:26 pm    文章主題: CursorAdapter 跟 Transactions 引言回覆

利用CursorAdpater 去聯結 SQL Server
現在想把DBF內的資料倒進SQL Server內,
並故意讓一兩筆資料有重號的現象,讓它倒進去時會觸發Primary Key產生錯誤;

有建立交易處理,但發現還是有一些資料倒進SQL Server內,
交易並沒有成功,抓取Sqlrollback的回傳值,卻又是 1

請教板上前輩,是我使用語法上有問題,還是這樣的測試方法根本就是錯誤,
測試錯誤的話,我該怎確嚐試,可否給我一個方向,謝謝

參考過論壇上的文章
http://vfp.sunyear.com.tw/viewtopic.php?t=2966&highlight=%A5%E6%A9%F6
http://vfp.sunyear.com.tw/viewtopic.php?t=692&postdays=0&postorder=asc&highlight=%A5%E6%A9%F6%B3B%B2z&start=0
Help 內的 使用異動交易更新資料

以下是小弟的Code,參考Help內弄出來的
代碼:
SQLSetprop(lnHandle,"TRANSACTIONS",2)
lbMyTable = Tableupdate(1,.T.,"MyTable")
If lbMyTable = .F.
   Aerror(aer)
   Messagebox(aer[2])

   lbSuccess = Sqlrollback(lnHandle)
   If lbSuccess < 0
       AERROR(aer)
       MESSAGEBOX(aer[2])
   Endif
Else
   If Sqlcommit(lnHandle) < 0
       AERROR(aer)
       MESSAGEBOX(aer[2])
   Endif
Endif
SQLSetprop(lnHandle,"TRANSACTIONS",1)
回頂端
檢視會員個人資料 發送私人訊息
ckp6250



註冊時間: 2004-07-30
文章: 1645


第 2 樓

發表發表於: 星期三 五月 13, 2009 5:09 pm    文章主題: 引言回覆

看來看去,還是用 Spt 方便多了

Select MyTable
Scan 
 if SQLExec(lnHandle , "insert into ........" )=-1
  Messagebox("失敗")
  exit
 endif
EndScan
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
syntech



註冊時間: 2003-05-16
文章: 4249
來自: Taipei,Taiwan

第 3 樓

發表發表於: 星期三 五月 13, 2009 5:18 pm    文章主題: 引言回覆

請愛用 SQL PROFILER 檢查這段期間內,
VFP 到底傳了哪些命令.
以及是否SQL SERVER 仍處於"隱含交易 (Implicit Transaction) "模式

_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
ckp6250



註冊時間: 2004-07-30
文章: 1645


第 4 樓

發表發表於: 星期三 五月 13, 2009 5:28 pm    文章主題: 引言回覆

請教一下 syntech 大大

使用 SQL PROFILER , 會不會降低 SQL Server 的效能呀 ?
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
syntech



註冊時間: 2003-05-16
文章: 4249
來自: Taipei,Taiwan

第 5 樓

發表發表於: 星期三 五月 13, 2009 5:49 pm    文章主題: 引言回覆

又沒叫你一直開著.
_________________
如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問

請聯絡我們,也許我們幫得上忙
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 AIM Address
pilipala



註冊時間: 2009-05-13
文章: 75


第 6 樓

發表發表於: 星期四 五月 14, 2009 5:04 pm    文章主題: 引言回覆

To syntech ~~
隱含交易 (Implicit Transaction) 指的是自動交易的意思吧 ^^ ??
在Help內的 "如何:使用自動異動交易模式" 和 "如何:手動控制異動交易" 有指出
Transactions 設為 2 和 取消CA內的Usetransactions就可以避免自動交易~~

感謝您SQL Profile這個方向,謝謝~~ ^_^

To ckp6250 ~~
我想工具的選擇,就是黑貓白貓的理論吧,
只是小弟對CA還不太熟,所以問題多多。
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作