[英]Switching Access 2007 accdb backend to SQL server express / Best frontend options?
[英]@@Identity returns 0 from Access Frontend (SQL Server Express backend)
我一直在網上尋找解決此問題的方法,所有答案似乎都告訴我我做得正確。 我已經繼承了該Access / SQL Server數據庫,但似乎無法使這一部分正常工作。
我正在執行工作正常的相當基本的SQL INSERT
查詢。 我已經檢查了好幾次了。 查詢執行后,我試圖從中獲取身份值以用於其余代碼。
這是我的代碼:
db.Execute (SQLStr)
Set rs = db.OpenRecordset("SELECT @@IDENTITY")
InNo = rs(0)
Debug.Print InNo
rs.Close
db.Close
這始終為InNo
返回值0。 我嘗試了幾種不同的方法,但似乎無法正常工作。
我也直接在SQL Server中使用了此方法,並且查詢@@Identity
效果很好。
提前致謝。
我懷疑您在本地Access數據庫上運行SELECT @@IDENTITY
,這當然不知道@@IDENTITY
是什么。
不過,我不確定100%,因為您沒有顯示完整的代碼,也不知道db
是什么。
如果db
是CurrentDB
,則Set rs = db.OpenRecordset
行將打開一個DAO.Recordset
,它會在本地Access數據庫上執行查詢。
如果我的猜想是正確的,那么您需要打開記錄集,並通過傳遞查詢在其中執行SELECT @@IDENTITY
的記錄集實際上在SQL Server上運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.