1

我希望我问的是一个相当简单的问题——老实说,只是想为自己节省一些时间。:)

我想要的只是从 SQL Server 作业中调用 PL/SQL 过程。

我已经在注册表字符串中有连接字符串,并且我已经构建了程序。

我不知道我是否可以指定 T-SQL 并以某种方式获取注册表设置,但我怀疑我需要一个 ActiveX 脚本(如果可能的话)。

有人手边有这个(诚然非常具体的)代码片段吗?

提前致谢!

冷若冰霜

4

1 回答 1

1

最终到达那里。这在 ActiveX 工作下对我有用:

Const HKEY_CURRENT_USER = &H80000001
Const HKEY_LOCAL_MACHINE = &H80000002

Dim oConnection, oRegistry, sConnectionString, sPlsqlCall, sRegistryKey, sValueName, sParam1, sParam2

' Get connection string from registry
Set oRegistry = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")
sRegistryKey = "Software\OracleConnectionString"
sValueName = "Value"
oRegistry.GetStringValue HKEY_CURRENT_USER, sRegistryKey, sValueName, sConnectionString

' Set up PLSQL query
sPlsqlCall = "my_package.my_procedure(" & sParam1 & ", " & sParam2 & ")"

' Call PLSQL
Set oConnection = CreateObject("ADODB.Connection")
oConnection.ConnectionString = sConnectionString
oConnection.Open
oConnection.Execute sPlsqlCall

oConnection.Close
Set oConnection = Nothing
Set oRegistry = Nothing
于 2011-02-15T16:01:24.267 回答