2016-05-17 63 views
1

我正在創建一個使用Access ADP(Access Data Project)的應用程序。作爲前端,SQL Server作爲後端。我正在使用ADODB進行連接。我一直在研究是否爲表單使用RecordSource屬性或Recordset屬性。我的目標是創建一個未綁定的應用程序。記錄源與Recordset for Unbound表格

我還沒有得到清楚的答案,哪一個使用。到目前爲止,我已經能夠做的是設置記錄源存儲過程是這樣

strSQL = "exec STOREDPROCEDURE " 
Me.Form.RecordSource = strSQL 

我還可以打開相同的SQL str作爲一個記錄,設置形式記錄,然後關閉記錄這樣

Dim Cmd As New ADODB.Command 
Dim rs As New ADODB.Recordset 

    Set rs = New ADODB.Recordset 

    strSQL = "exec STOREDPROCEDURE" 

    rs.Open strSQL, CurrentProject.Connection 

Set Me.Recordset = rs 
rs.Close 

有人可以向我解釋2和哪個是首選方法之間的區別是什麼?我看到它的方式,數據在被傳遞迴應用程序之前在SQL Server上被過濾,所以我沒有看到使用Recordset或者Recordsource之間的區別。

+0

@HansUp 是的。 –

回答

1

使用.adp,您將使用記錄源,而不是記錄集,儘管您可能依賴於正在運行的訪問版本,還需要設置輸入參數屬性。

Me.RecordSource = "EXEC schema.storedprocedue [arguments]" 

可以正常工作。

但是,我會做一個評論是 - 爲什麼.adp? MS Access 2013 &稍後將不會運行adp,並且Access 2010有可能在未來幾年內不受支持。