После экспорта таблицы вручную в Azure SQL Server просто свяжите эту таблицу с приложением MS Access, а затем выполните запросы действий вручную или автоматически с помощью кода для вашего ежедневного обновления.
Таблица связанных SQL-серверов
Это хорошо известная функция MSAccess.exe, способная подключаться практически к любому ODBC / OLEBD-совместимому источнику данных от Oracle и SQL Server до Quickbooks и Salesforce. Требования включают в себя:
- Драйвер ODBC для SQL Server Azure или ранее созданный Имя источника данных (DSN)
- Убедитесь, что подключенный пользователь имеет права на чтение / запись таблицы (назначается на сервере)
- Обход мастера для начальной настройки (см. Параметр базы данных ODBC в разделе «Внешние данные»)
Запросы действий
SQL (сохранить как сохраненный запрос MS Access, можно дважды щелкнуть объект для запуска вручную)
Количество столбцов должно быть эквивалентно в предложениях INSERT
и SELECT
, и каждый соответствующий тип должен совпадать (не указывать автономные номера).
INSERT INTO mySQLServerTable (Col1, Col2, Col3, ...)
SELECT e.Col1, e.Col2, e.Col3, ...
FROM myExcelTable AS e
В качестве альтернативы, если вам нужно выполнить запрос UPDATE
, требующий сопоставления столбцов между двумя источниками таблицы.
UPDATE mySQLServerTable s
INNER JOIN myExceltable e ON e.MatchColumn = s.MatchColumn
SET s.Col1 = e.Col1, s.Col2 = e.Col2, s.Col3 = e.Col3, ...
VBA (автоматический запуск хранимого запроса в MS Access)
' WARNS USER OF NUMEBR OF ROWS TO BE INSERTED/UPDATED
DoCmd.OpenQuery "myActionQuery"
' DOES NOT WARN USER
CurrentDb.Execute "myActionQuery", dbFailOnError
И наоборот, вы можете запустить запрос SQL Server, который вставляется в вашу таблицу из внешнего источника MS Access, используя OPENROWSET . Это предполагает, что база данных доступна из того места, где находится SQL Server.
INSERT INTO INSERT INTO mySQLServerTable (Col1, Col2, Col3, ...)
SELECT e.Col1, e.Col2, e.Col3, ...
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'C:\path\to\myDatabase.accdb', 'admin', '', myExcelTable) AS e