我需要在MS Access 2013中执行存储过程。我使用Access作为连接到两个数据库的前端接口。一个数据库有一些存储过程。我需要在Access中按下按钮来执行这些操作。
数据库通过SQL Server身份验证连接。我在Access中启动了一个按钮,这是此按钮后面的VBA代码。它是空的,只需要更多代码就可以运行它:
Private Sub UpdateItems_Click()
End Sub
以下是建立连接和存储过程名称的参数:
服务器名称: BOX \ SQL2014
用户名: sa
密码: 123456PS
数据库: SixBit
存储过程名称: spRefreshItems
请不要向我推荐类似的问题。我不使用VBA代码,我无法模仿稍微不同但相似的例子。
答案 0 :(得分:1)
试试这个:
Sub ExecSP()
Dim connection As Object: Set connection = CreateObject("ADODB.Connection")
Dim rs As Object: Set rs = CreateObject("ADODB.Recordset")
With connection
.ConnectionString = "DRIVER=SQL Server;SERVER=BOX\SQL2014;Trusted_Connection=Yes;APP=2007 Microsoft Office system;DATABASE=SixBit;User ID=sa;Password=123456PS"
.CommandTimeout = 0
.Open
End With
'<<Replace SchemeName by Scheme name of the SP>>'
Set rs = connection.Execute("EXEC SchemeName.spRefreshItems")
connection.Close: Set rs = Nothing: Set connection = Nothing
MsgBox "Done!"
End Sub