Мне посчастливилось унаследовать базу данных Access, которая нуждается в огромной очистке. На самом деле мы собираемся покинуть Access и преобразовать его в .NET / SQL Server. Однако пока мы сохраняем пользовательский интерфейс базы данных Access и переносим все запросы в SQL Server.
К сожалению, я никогда по-настоящему не работал с Access напрямую, поэтому я спотыкаюсь на ходу.
Я ищу способ написать функцию, которая принимает хранимый процесс и некоторые значения параметров, выполняет хранимый процесс на SQL Server и возвращает результаты в виде Resultset.
Так что подпись может выглядеть так ...
Public Function ExecuteStoredProcedure(storedProcName As String, parameterValues As String) As RecordSet
Передаваемые значения параметров будут разделяться запятыми.
Так что пример вызова этой функции может выглядеть так ...
Set returnValues = ExecuteStoredProcedure("SP_GetTableXYZContents","'01/01/2011','ABCD',2345")
Это кажется таким тривиальным, но я не могу заставить его работать должным образом. Кто-нибудь может указать мне правильное направление?
Я выполняю их просто следующим образом (но не могу получить возвращаемые значения)
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
conn.Open "...connectionstring..."
conn.Execute storedProcCall, dbSQLPassThrough
Обратите внимание, что в приведенном выше коде функция принимает только одну строковую переменную (имя SP и значения параметров, где имя и значения SP разделены пробелом, а значения - запятыми.
Заранее спасибо за любую помощь!