Справочная информация. Я работаю в интерфейсе пользователя Access 2010 с бэкэнд Microsoft SQL Server 2008. Таблицы в доступе связаны с базой данных SQL-сервера. У меня есть хранимая процедура, которая вставляет новые значения (поставляемые параметрами) в таблицу. Я прошел через множество примеров, но я не понимаю достаточно, чтобы узнать, действительно ли я близок к тому, чтобы получить его, или я полностью отключен. Ранее я задал аналогичный вопрос и получил хороший андерсерс, но у меня проблемы с строкой соединения. Вот вопрос /anwser Вызов хранимой процедуры при передаче параметров из модуля доступа в VBA
Я не знаю и не знаю, как найти информацию, необходимую для создания строки подключения (например: я не знаю адрес сервера/сервера/сервера). Я нашел здесь вопрос: "Если у вас уже есть связанная с Access таблица, указывающая на базу данных SQL Server, вы можете просто использовать ее строку .Connect с объектом DAO.QueryDef для выполнения хранимой процедуры" - Строка подключения для доступа к вызову хранимой процедуры SQL Server Я попытался реализовать этот код, но я не знал, как передавать параметры, поэтому я попытался использовать предыдущий пример. Но я получил ошибку "call failed" в строке "Set rst = qdf.OpenRecordset(dbOpenSnapshot)", не говоря уже о том, что мой код передаваемых параметров, вероятно, вышел из строя.
Set qdf = CurrentDb.CreateQueryDef("")
qdf.Connect = CurrentDb.TableDefs("tblInstrumentInterfaceLog").Connect
qdf.sql = "EXEC dbo.upInsertToInstrumentInterfaceLog"
qdf.ReturnsRecords = True
Set rst = qdf.OpenRecordset(dbOpenSnapshot)
qdf.Parameters.Append qdf.CreateParameter("@BatchID", adVarChar, adParamInput, 60, BatchID)
qdf.Parameters.Append qdf.CreateParameter("@InstrumentName", adVarChar, adParamInput, 60, InstrumentName)
qdf.Parameters.Append qdf.CreateParameter("@FileName", adVarChar, adParamInput, 60, FileName)
qdf.Parameters.Append qdf.CreateParameter("@QueueId", adVarChar, adParamInput, 60, QuenueId)
rst.Close
Set rst = Nothing
Set qdf = Nothing
Может ли кто-нибудь сказать мне, что может быть неправильно с моим кодом и почему я получаю эту ошибку? Спасибо!