Я пытаюсь импортировать столбец (product_id
) из таблицы products
, где продукт был приобретен (year_bght
) в 2018 году, из SQL Server в MS Access (та же таблица [products]
и столбец [product_id]
) через adodb.connection. Я в редакторе VBA в MS Access, пытаясь получить данные из SQL Server.
Мой отладчик показывает, что ошибка в строке cn.Execute
, но я не могу понять, что это такое. Я знаю, что соединение работает, потому что до cn.Execute
у меня было cn.Print
с окном сообщения, а product_id
печатали просто отлично
Public Function ConnectionString() As String
ConnectionString = "Provider=SQLOLEDB; Data Source=*****; Database=*****; Integrated Security=****;"
End Function
Public Sub TestMe()
Dim rs As ADODB.Recordset
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
cn.Open (ConnectionString)
rs.Open "SELECT DISTINCT(product_id) FROM products WHERE year_bght='2018'", cn
Do While Not rs.EOF
cn.Execute "INSERT INTO products(product_id) VALUES ('rs.Fields(0).Value');"
rs.MoveNext
Loop
End Sub
Я ожидаю импортировать столбцы, которые rs.Open
отфильтрованы в столбец products
[product_id
] в MS Access, но я получаю ошибку:
Неверное имя объекта 'products'