Задание SQL Server 2005 - вызов процедуры PLSQL с использованием строки подключения из реестра - PullRequest
1 голос
/ 15 февраля 2011

Надеюсь, я задаю достаточно простой вопрос - просто пытаюсь сэкономить время, чтобы быть честным. :)

Все, что я хочу, это вызвать процедуру PL / SQL из задания SQL Server.

У меня уже есть строка подключения в строке реестра, и у меня есть встроенная процедура.

Я не знаю, могу ли я просто указать T-SQL и как-то захватить настройки реестра, но я подозреваю, что мне нужен скрипт ActiveX (если это возможно).

У кого-нибудь есть этот (по общему признанию, довольно специфический) фрагмент кода?

Заранее спасибо!

Морозный

1 Ответ

1 голос
/ 15 февраля 2011

получил там в конце. Это работало для меня под заданием 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
...