Связать базу данных MySQL в файле доступа

0

У меня есть файл доступа, который является сервером в качестве базы данных mySQL. В файле доступа у меня есть несколько таблиц и запросов. Проблема в том, что я изменил базу данных mySQL с одного узла на другой, а другой не существует.

Что я хочу сделать, это привязать таблицы/запросы в этом файле доступа к базе данных, а не к старой базе данных. Я удалил старую запись ODBC, которую я использовал на своем компьютере, и создал новую. Но что происходит, когда каждый раз, когда я пытаюсь получить доступ к одному из запросов, он вызывает свойства соединения ODBC, и я должен изменить имя хоста подключения из старого, нового. Я считаю, что старая информация хранится где-то в файле, поэтому вся информация о том, где это хранится или когда мне приходится вручную делать это с помощью кода VBA, будет с благодарностью.

Теги:
database
ms-access

1 ответ

1
Лучший ответ

Существует два возможных места для хранения информации:

  • в строках подключения для связанных таблиц.

  • в строках подключения для сохраненных запросов.

Вы можете узнать строку подключения для таблицы с этим:

  ?CurrentDB.TableDefs("MyTable").Connect

... и для сохраненного запроса с помощью:

  ?CurrentDB.QueryDefs("MyQuery").Connect

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

Вы также можете найти код Doug Steele для строк подключения DSN-less.

  • 0
    Мое сомнение в том, как мне начать писать код. Можете ли вы предоставить пошаговые инструкции о том, как я должен написать это. (Не код для его связывания, а скорее где. IE. Перейдите в часть X базы данных Access, напишите функцию с именем X, и затем вы можете настроить ее на автоматический запуск следующим образом)
  • 0
    Ну, на самом деле вам не нужно писать код - вы можете сделать это вручную. Первое, что нужно сделать, это определить, где находятся строки подключения. Если они находятся в связанных таблицах, то сделайте, как я сказал, и удалите существующие ссылки и используйте менеджер связанных таблиц, чтобы воссоздать их (без кода!). Если, с другой стороны, строки запросов находятся в запросах, вы можете проверить, сколько - если это только один или два, то нет смысла писать код, чтобы это исправить.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню