Исключение SQL-скриптов в БД Access - PullRequest
1 голос
/ 14 мая 2009

У меня есть скрипт с несколькими сотнями SQL-запросов, которые мне нужно выполнить в БД Access. Поскольку выполнение SQL-запросов в Access является IMO выходным, неудобно, вы можете выполнять только по одному за раз и не распознавать строки комментариев, начинающиеся с '-', я хотел бы знать, существует ли более простой способ сделать это. Есть ли хорошая альтернатива MS Access для управления БД Access?

Ответы [ 3 ]

2 голосов
/ 14 мая 2009

Я бы предложил написать приложение или скрипт PowerShell для чтения запросов из файла и выполнения в базе данных Access. Читайте построчно, игнорируя строки, начинающиеся с разделителя комментариев.

1 голос
/ 15 мая 2009

Два достойных варианта:

Вариант 1. Напишите программу на C #, которая будет использовать библиотеки DAO для автоматизации Access и выполнения операторов программно.

dao.DBEngineClass dbengine = new dao.DBEngineClass();
dbengine.OpenDatabase(path, null, null, null);
dao.Database database = dbengine.Workspaces[0].Databases[0];
database.Execute(sql, null);

Вариант 2: Написать модуль VBA в базе данных, который будет делать то же самое, используя метод CurrentProject.Connection.Execute().

В любом случае вы можете поместить этот код в цикл, который читает ваши операторы и выполняет их один за другим.

0 голосов
/ 14 мая 2009

Как насчет установки ссылок из базы данных MS-SQL на базу данных доступа и запуска сценариев через MS-SQL? Предполагая, что вы не изменяете структуры таблиц, все должно быть в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...