我有一个用于在SQL Sever中创建和更新表的Proc。结果表链接到MS ACCESS FE。它是由Macro创建的,涉及MS Access中的查询。我怎么能从MS Access FE调用或执行Proc。
我尝试过这段代码但不会产生任何结果。
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
cmd.ActiveConnection = "Provider=SQLNCLI11.1;Security=SSPI;Initial Catalog=MYDB;Server=MyServer;Integrated Security=SSPI;"
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "UPDATE_DATA"
cmd.Execute
我是VBA Coding的新手。任何帮助或线索将不胜感激。
答案 0 :(得分:1)
在您的代码中,您尚未打开与数据库的连接。首先打开一个连接,如下面的代码所示:
Private Const gcConn As String = "Provider=SQLNCLI11.1;Security=SSPI;Initial Catalog=MYDB;Server=MyServer;Integrated Security=SSPI;"
Sub UpdateProc()
Dim oDB As ADODB.Connection
Dim oCM As ADODB.Command
Set oDB = New ADODB.Connection
oDB.Open gcConn
Set oCM = New ADODB.Command
With oCM
.ActiveConnection = oDB
.CommandType = adCmdStoredProc
.CommandText = "UPDATE_DATA"
.Execute
End With
oDB.Close
Set oDB = Nothing
End Sub
答案 1 :(得分:0)
只需将命令保存为传递查询即可。您的查询是:
UPDATE_DATA
然后这一行代码将运行该查询
CurrentDb.QueryDefs("MyPass").Execute