我不一定需要从我的VBScript传递存储过程中的任何变量,我只需要在服务器上运行存储过程。我还没有找到任何关于如何做到这一点的明确例子 - 很多人都在解释如何将变量从SP传递回VBScript。
任何帮助都会非常感激!看起来我必须打开一个连接,然后发送命令来执行存储过程,然后关闭连接,但是我对如何从VBscript执行此操作感到有点迷失。
谢谢!
答案 0 :(得分:8)
您可以使用VbScript中的ADODB.Connection
对象
检查此示例
Dim sServer, sConn, oConn, sDatabaseName, sUser, sPassword
sDatabaseName="test"
sServer="localhost"
sUser="sa"
sPassword="yourpassword"
sConn="provider=sqloledb;data source=" & sServer & ";initial catalog=" & sDatabaseName
Set oConn = CreateObject("ADODB.Connection")
oConn.Open sConn, sUser, sPassword
oConn.Execute "exec sp_help"
WScript.Echo "executed"
oConn.Close
Set oConn = Nothing
答案 1 :(得分:2)
您可以创建一个这样的方法:
Public Sub ExecuteSql( sqlString )
Dim oConn
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open connectionString
oConn.Execute( CStr(sqlString) )
oConn.Close
Set oConn = Nothing
End Sub
注意:此例程假定SQL语句是由调用例程构建并正确转义的。此外,connectionString
是一个常量,您可以使用连接字符串存储到db。
示例电话:
Call ExecuteSql( "exec MyProc" )