Ранее я рассказывал о том, как использовать проекты баз данных Access, чтобы дать возможность Access работать в качестве клиентского компьютера для SQL Server. Я объяснял, как создавать новые проекты. А что если многопользовательская база данных Access уже создана, и надо ее повысить до SQL Server Express, для того чтобы обработать больше запросов пользователей и повысить производительность? На этот раз я покажу, как можно перейти от многопользовательской базы данных Access к проекту базы данных Access, который использует SQL Server Express в качестве сервера.
Если имеющийся проект на Access представлял собой очень большую многопользовательскую базу данных, то, вполне возможно, он был разделен: на внешнюю базу данных, которая содержит формулы, запросы и сообщения, и внутреннюю базу данных, содержащую таблицы данных. Разделение базы данных Access позволяет внешней части базы данных работать локально на каждом персональном компьютере. Все многочисленные системы, объединенные в сеть, имеют доступ к совместно используемой внутренней базе данных. Таблицы во внешней базе данных прилинкованы к таблицам Access. Когда присутствует разделение базы данных Access, существует два способа обновления версии до сервера SQL Server Express.
Первый способ - запустить на внутренней базе данных мастер Upsizing Wizard, который конвертирует таблицы Access в таблицы SQL Server. Затем можно вручную модернизировать все прилинкованные таблицы во внешней базе данных, чтобы указать на новые таблицы в базе данных SQL Server. Однако в этом случае нельзя будет оборвать связь с проектом базы данных Access. Это означает, что невозможно будет использовать Access для управления базой данных SQL Server, и нельзя будет использовать преимущество имеющихся в SQL Server объектов базы данных, таких как хранимые процедуры.
Более подходящий способ - запустить мастер масштабирования Upsizing Wizard для внешней базы данных. Мастер управляет конвертированием прилинкованных таблиц в таблицы SQL Server и извлекает данные из внутренней базы данных. Я рассказывал об использовании Upsizing Wizard раньше, но конвертирование в проект базы данных Access немного отличается от конвертирования в прилинкованные таблицы.
Сначала требуется открыть внешнюю базу данных с помощью Access 2007 и запустить мастер из раздела Database Tools. Выберите SQL Server из секции Move Data, затем выберите "Create new database" и нажмите Next. В следующем диалоговом окне нужно ввести имя экземпляра SQLEXPRESS (значение по умолчанию - SQLEXPRESS), информацию для аутентификации и название базы данных, которая будет создана в SQL Server Express. Щелкните Next. Выберите таблицы для перемещения (двойным нажатием стрелки осуществляется выбор всех таблиц) и нажмите Next. Примите все значения по умолчанию, которые включают перенос размеров индексов, правил проверки, значений по умолчанию, связей между таблицами, и нажмите Next. Для создания проекта базы данных Access выберите флажок Create a new Access client/server application и дайте имя файлу проекта. По умолчанию Upsizing Wizard добавляет CS в конец имени базы данных Access и соединяет это имя с расширением файла .adp. Щелкните Next, затем нажмите Finish.
В конце процесса Access открывает новый проект, и приложение Access соединяется с более мощным и сильным процессором базы данных SQL Server Express. Затем можно разместить новый проект базы данных Access на системах, которые ранее использовали прежнюю внешнюю базу данных Access.