Могу ли я скопировать структуру базы данных MySQL в MS Access pre 2007? - PullRequest
1 голос
/ 05 января 2011

Я хочу создать настольную версию моей установки MySQL без необходимости настройки сервера на моей машине.

Я хочу использовать конструктор запросов MS Access, чтобы создавать сложные запросы.

Я знаю, что могу создать файл SQL, но я не знаю, как из него создать базу данных MS Access?

Ответы [ 3 ]

0 голосов
/ 05 января 2011

Я не собираюсь прыгать на подножку «Access sucks», хотя иногда это может очень расстраивать.

В худшем случае, вы можете начать с пустой базы данных Access(файл MDB, так как вы указали до 2007 года).Откройте конструктор запросов и перейдите в представление SQL.Вставьте один полный оператор SQL (CREATE TABLE...) и запустите его.Исправьте все ошибки несовместимости, вставьте следующее (заменив первое), промойте, повторите.Обязательно сделайте это в таком порядке, чтобы любые «источники» зависимостей создавались раньше, чем зависимые.

Возможно, существует пакетный процесс, но я не знаю, что это за руки.

0 голосов
/ 08 января 2011

Я не знаю, является ли это приемлемым вариантом, но если вы можете настроить DSN для указания на ваш сервер MySQL, вы можете использовать FILE |ПОЛУЧИТЬ ВНЕШНИЕ ДАННЫЕ |ИМПОРТ для импорта ваших таблиц MySQL в пустой MDB / ACCDB.Это разовая операция, но я не знаю, есть ли здесь другой вариант.Вы должны получить возможность импортировать только схему таблицы, а не схему + данные.Возможно, вам придется настроить типы данных в результирующих таблицах, поскольку типы данных MySQL не обязательно будут напрямую связаны с типами данных Jet / ACE.

Тогда вы можете перенести файл MDB / ACCDB куда угодно.1003 *

0 голосов
/ 05 января 2011

Переход от MySQL к чему-то вроде Access движется в неправильном направлении.

Если вам требуется установка или пакет SQL без сервера в составе вашего дистрибутива (что в наши дни является довольно распространенным требованием, поскольку администраторы не любят, когда пользователи устанавливают серверы баз данных на своих компьютерах), рассмотрим SQL Server Compact Edition (CE) или SQL Lite . Они оба полностью совместимы с SQL (в отличие от Access) и вызовут у вас гораздо меньше головной боли, чем Access (что отстой). (Я упоминал, что Access отстой? Большое время?)

SQL CE - это сборка .NET, которая выполняется внутри вашего приложения и с которой очень легко работать. Кроме того, создаваемые вами объекты БД будут совместимы с полноценной версией SQL Server. Он также очень и очень хорошо работает с Entity Framework, если вы используете ORM.

Я слышал похвалу за SQLite, но не работал с ним. Если вы не подключены к .NET, это должен быть хороший способ.

Ссылки:

SQL CE

SQLite

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