Со временем большинство приложений баз данных растет, становится все сложнее, и им требуется поддерживать больше пользователей. На определенном этапе жизненного использования Microsoft Office Access может потребоваться сделать базу данных Microsoft SQL Server более размерной, чтобы оптимизировать производительность, масштабируемость, доступность, безопасность, надежность и возможность восстановления.

В этой статье

О том, как Microsoft Office базу данных Access

Upsizing is the process of migrating some or all объекты базы данных from an Access database to a new or existing SQL Server database or new Access project (ADP).

Преимущества, которые дает возможность SQL Server

  • Высокая производительность и масштабируемость    Во многих случаях SQL Server обеспечивает лучшую производительность, чем база данных Access. SQL Server также обеспечивает поддержку очень больших баз данных терабайт (это значительно больше текущего предела в базе данных Access, которая составляет 2 гигабайта). Наконец, SQL Server эффективнее обрабатывают запросы параллельно (используя несколько затейных потоков в одном процессе для обработки запросов пользователей) и минимизируя дополнительные требования к памяти при добавлении новых пользователей.

  • Повышенная доступность    SQL Server позволяет делать ее динамическую резервную копию (пошаговую или полную), пока она используется. Поэтому вам не нужно принудительно выходить из базы данных для хранения данных.

  • Улучшенная безопасность    Используя надежное подключение, SQL Server может интегрироваться с системой безопасности Windows, обеспечивая единый интегрированный доступ к сети и базе данных, используя все лучшие из обеих систем безопасности. Это значительно упрощает администрирование сложных схем безопасности.

  • Немедленное восстановление    В случае сбоя системы (например, сбоя операционной системы или отключения питания) SQL Server есть механизм автоматического восстановления базы данных до последнего согласованного состояния в течение нескольких минут без вмешательства администратора базы данных.

  • Серверная обработка    Использование SQL Server в конфигурации клиента или сервера сокращает сетевой трафик за счет обработки запросов к базе данных на сервере перед отправкой результатов клиенту. Как правило, сервер обрабатывает данные гораздо эффективнее, особенно при работе с большими наборами данных.

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

Способы для более взламывки

Мастер модернизации перемещает объекты базы данных и содержащиеся в них данные из базы данных Access в новую или существующую SQL Server базу данных.

С помощью мастера можно использовать три способа:

  • Вы можете создать клиент-серверную базу данных, на которой можно создать клиент-серверный проект, из всех объектов базы данных Access в проект Access. Для этого подхода требуются дополнительные изменения и изменения кода и сложных запросов.

  • Можно также сделать так, чтобы из базы данных Access можно было только SQL Server или определений данных.

  • Создайте переднюю базу данных Access для SQL Server, чтобы можно было создать клиентская и серверная части приложения. Этот подход требует очень мало изменений приложения, так как код все еще использует ЯД Access (ACE).

Перед тем как вверху базы данных Access,

Перед тем как сделать базу данных Access большей, чем SQL Server базу данных или проект Access, можно сделать следующее:

  • Создание резервной копии базы данных     Хотя мастер еще не удаляет данные и объекты базы данных из базы данных Access, перед ее удалением лучше создать резервную копию базы данных Access.

  • Убедитесь, что у вас достаточно места на диске     На устройстве, которое будет содержать базу данных с upsized, должно быть достаточно места на диске. Мастер, который лучше всего работает, когда на диске достаточно места.

  • Создание уникальных индексов     Связанная таблица должна иметь уникальный индекс, который можно обновлять в Access. Мастер может привести к большему размеру существующего уникального индекса, но не сможет создать его там, где его нет. Если вы хотите иметь возможность обновлять таблицы, не забудьте добавить уникальный индекс в каждую таблицу Access, прежде чем обновлять таблицу.

  • Назначение себе соответствующих разрешений для SQL Server базы данных

    • Для настройки существующей базы данных необходимы разрешения CREATE TABLE и CREATE DEFAULT.

    • Чтобы создать новую базу данных, вам потребуется разрешение CREATE DATABASE и разрешение SELECT для системных таблиц в этой базе данных.

Мастер upsizing Access 2007 оптимизирован для работы с Microsoft SQL Server 2000 и SQL Server 2005.

К началу страницы

Использование мастера

  • На вкладке "Инструменты базы данных" в группе "Перемещение данных" нажмите кнопкуSQL Server.

    Запускается мастер.

Шаг 1. Выбор новой или существующей базы данных

На первой странице мастера укажите, хотите ли вы сделать базу данных Access SQL Server существующей или создать новую SQL Server базу данных.

  • Использование существующей базы данных    Если выбрать этот параметр и нажать кнопку "Далее", access отобразит диалоговое окно "Выбор источника данных", чтобы можно было создать подключение ODBC к существующей базе SQL Server данных.

    Сведения об источниках данных ODBC

    Источник данных — это источник данных, объединенный с данными подключения, необходимыми для доступа к ним. Примерами источников данных являются Access, SQL Server, RDBMS Oracle, электронные таблицы и текстовые файлы. Сведения о подключении могут включать расположение сервера, имя базы данных, идентификатор входа, пароль и различные параметры драйвера ODBC, описывающие способ подключения к источнику данных.

    В архитектуре ODBC приложение (например, Access или microsoft Visual Basic) подключается к диспетчеру драйверов ODBC, который, в свою очередь, использует определенный драйвер ODBC (например, Microsoft SQL ODBC) для подключения к источнику данных (в данном случае — к базе данных SQL Server). В Access источники данных ODBC используются для подключения к внешним источникам данных, у которых нет встроенных драйверов.

    Чтобы подключиться к такому источнику данных, выполните указанные ниже действия.

    • Установите соответствующий драйвер ODBC на компьютере с источником данных.

    • Определите имя источника данных (DSN) с помощью программы Администратор источников данных ODBC, чтобы сохранить сведения о подключении в реестре Microsoft Windows или DSN-файле, либо с помощью строки подключения в коде Visual Basic, чтобы передать сведения о подключении непосредственно диспетчеру драйверов ODBC.

      Машинные источники данных

      Машинные источники данных хранят сведения о подстройке в реестре Windows на определенном компьютере с определенным пользователем именем. Машинные источники данных можно использовать только на том компьютере, на который они были определены. Существует два типа машинных источников данных — пользовательские и системные. Источники данных пользователя могут использоваться только текущим пользователем и видны только этому пользователю. Источники данных в системе могут использоваться всеми пользователями на компьютере и видны всем пользователям на компьютере и в службах в масштабе системы. Машинный источник данных особенно полезен, если требуется обеспечить дополнительные сведения о безопасности, так как просматривать его могут только пользователи, которые вошли в систему, и его невозможно скопировать удаленным пользователем на другой компьютер.

      Файловые источники данных

      Файловые источники данных (также называемые DSN-файлами) хранят сведения о подключении в текстовых файлах, а не в реестре Windows, и, как правило, более гибки в использовании, чем машинные источники данных. Например, вы можете скопировать файл источника данных на любой компьютер с правильным драйвером ODBC, чтобы приложение использовало согласованную и точную информацию о под соединении на всех своих компьютерах. Кроме того, можно поместить файловый источник данных на отдельный сервер, сделать его общим для нескольких компьютеров в сети и легко управлять централизованными сведениями о подключении.

      Некоторые файловые источники данных нельзя сделать общими. Файл, который невозможно сделать одним из источников данных, находится на одном компьютере и указывает на машинный источник данных. Их можно применять для доступа к существующим машинным источникам данных из файловых источников данных.

      Строки подключения

      В модуле можно определить отформатированную строку подключения, которая определяет сведения о подключении. Строка подключения передает сведения о подключении непосредственно диспетчеру драйверов ODBC и упрощает приложение, убирая требования к созданию DSN системным администратором или пользователем перед использованием базы данных.

  • Создание базы данных    Если выбрать этот параметр и нажать кнопку "Далее", отобразится страница, на которой введите сведения о новой базе SQL Server данных.

    • Какие SQL Server вы хотите использовать для этой базы данных?     Введите имя сервера, который вы хотите использовать.

    • Доверительное соединение     Вы можете использовать надежное подключение, то есть SQL Server интеграцию с системой безопасности операционной системы Windows, чтобы обеспечить единый вход в сеть и базу данных.

    • Учетная запись и пароль     Если не используется надежное подключение, введите код для логотипа и пароль учетной записи с привилегиями CREATE DATABASE на сервере.

    • Как вы хотите назвать новую базу SQL Server базы данных?     Введите имя новой базы SQL Server данных. Access исправляет имя, если конфликтует с существующим именем базы данных, и добавляет к нему нудный суффикс (например, mydatabase 1).

К началу раздела

Шаг 2. Выбор таблиц для upsize

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

В списке "Доступные таблицы" содержатся все связанные таблицы SQL Server кроме таблиц, уже SQL Server базе данных. Связанные таблицы, которые указывают на SQL Server базы данных, выбранной для upsizing, автоматически отображаются в списке "Экспорт в SQL Server" и их нельзя удалить. Таблицы, которые в данный момент не видны в Область навигации, также исключаются, включая скрытые и системные таблицы.

Совет: Любая таблица с именем, названием которого является "_local", исключается из списка доступных таблиц, чтобы предотвратить уже такой размер. Если вы хотите повторно использовать эти таблицы, перед запуском мастера изменения размеров переименуйте их, удалив суффикс "_local".

К началу раздела

Шаг 3. Указание атрибутов и параметров для настройки размера

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

Примечание: По умолчанию мастер преобразования имен полей Access в SQL Server юридических полей и преобразует типы данных Access в эквивалентные SQL Server типов данных.

Какие атрибуты таблицы нужно upsize?

В следующей таблице перечислены атрибуты, размер которых можно upsize, и описано, как с каждым из них работает мастер.

Атрибут

Действие, если выбрано

Индексы

Мастер upsizing upsizing upsize all indexs (Мастер модернизации) upsizes all indexs (Мастер модернизации).

Мастер преобразования первичных ключей Access в SQL Server индексы и пометит их SQL Server первичными ключами. Если вы решите связать таблицу SQL Server размера с базой данных Access, мастер также добавит к имени индекса префикс "аааа". Это необходимо, так как Access выбирает индекс, который находится в алфавитном порядке в списке доступных индексов в качестве первичного ключа, а префикс "aaaaa" гарантирует выбор правильного индекса.

Все остальные индексы сохраняют свои имена, за исключением случаев, когда незаконные символы заменяются знаками _. Уникальные и неуникаленные индексы Access становятся уникальными и неуникательными SQL Server индексами.

Связанная таблица должна иметь уникальный индекс, который можно обновлять в Access. Мастер может привести к большему размеру существующего уникального индекса, но не сможет создать его там, где его нет. Если после изменения их размеров вы хотите обновлять данные в таблицах, добавьте уникальный индекс в каждую таблицу Access.

Правила проверки

Мастер изменения размеров обновляет следующие триггеры обновления и вставки:

  • Все необходимые свойства поля

  • Правила проверки таблицы

  • Правило проверки записи.

  • Правило проверки поля.

Триггером является ряд SQL Transact-SQL, связанных с таблицей SQL Server. Таблица может иметь триггеры ( по одному для каждой команды, которая может изменять данные в таблице: команда UPDATE, INSERT и DELETE). Триггер автоматически выполняется при выполнении команды. Мастер настройки использует триггеры, а не правила SQL Server для проверки на уровне поля, так как правила SQL Server не позволяют отображать настраиваемые сообщения об ошибках.

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

Если для свойства "Обязательное поле Access" установлено значение TRUE, пользователь не сможет вставить запись и оставить требуемую нулевую (если поле по умолчанию не привязано к полю) или при обновлении записи будет иметь значение NULL. Необходимые поля имеют размер до полей, которые не позволяют использовать значения NULL SQL Server.

Текст проверки

Свойство "Текст проверки базы данных Access" преобразуется в свойство "Текст проверки проекта Access". Это позволяет отображать в Access сообщения об ошибках в случае нарушения ограничений во время запуска.

Значения по умолчанию

Мастер upsizing upsizes all Default Value properties to American National Standards Institute (ANSI) default objects.

Отношения между таблицами

Мастер upsizing upsizing upsize all table relationships.

Вы можете решить, как обновлять связи между таблицами и целостность данных с помощью триггеров обновления, вставки и удаления либо с помощью объявленной целостности данных (ИДЛИТ). Функции ДРВ работают так же, как и целостность данных Access, определяя ограничения первичного ключа для базовых таблиц (сторона "один" отношения "один-ко-многим") и ограничения внешнего ключа для внешних таблиц (как правило, это сторона "многие" связи "один-ко-многим").

  • Использование ВЕТ     Выберите "Связи между таблицами"и используйте функцию ПРОПНАПРАВЛЕНИЕ, чтобы использовать ФУНКЦИЮ ПРОПНАПРАВЛЕНИЕ для обеспечения целостности данных. Проверка столбца базы данных Access преобразуется в ограничение проверки SQL Server НАСТОЛ" с сообщением о проверке, как показано в таблице ниже.

Отношение между базами данных Access

SQL Server внешнего ключа

Validatio n Text

Каскадное обновление

ПРИ УДАЛЕНИИ БЕЗ ДЕЙСТВИЯ В КАСКАДНОМ ОБНОВЛЕНИИ

"Запись невозможно удалить, так как <внешней> включает связанные записи".

Каскадное удаление

ON DELETE CASCADE ON UPDATE NO ACTION

"Невозможно добавить или изменить запись, так как в таблице требуется связанная запись <и>".

Каскадное обновление
и каскадное удаление

ON DELETE CASCADE ON UPDATE CASCADE

Значение не за установлено.

No ИНИЦИА

ПРИ УДАЛЕНИИ БЕЗ ДЕЙСТВИЯ "ОБНОВЛЕНИЕ БЕЗ ДЕЙСТВИЯ"

Эту запись невозможно добавить, изменить или удалить из-за ограничения отношений между таблицами <и> и <внешней>.

  • Использование триггеров     Если вы определили каскадные обновления или удаления в связях между таблицами Access и хотите сохранить это поведение в таблицах с более upsized таблицами, выберите связи между таблицами и триггеры использования. При этом каскадные обновления обновляются или удаляются как триггеры для обеспечения целостности данных.

    Связь между таблицами не обязательно имеет соответствие "один-к-одному" с триггером. Каждая связь может стать частью нескольких триггеров или каждый триггер может содержать код для эмулации функций нескольких правил целостности данных. Триггеры вставки используются для родительских таблиц, а триггеры удаления — для родительских таблиц.

    Примечание: Access требует, чтобы диаграмма базы данных SQL Server данных. Чтобы разрешить Access читать схему базы данных при обеспечении целостности данных с помощью триггеров, мастер инициализации построит функцию ПРОПНАЦ в связях, но отключит проверку ограничений внешнего ключа.

Какие параметры данных вы хотите включить?

  • Добавление полей timestamp в таблицы    SQL Server использует поле timestamp, чтобы указать, что запись была изменена (но не в момент), создав уникальное поле значения и обновляя его при обновлении записи. Для связанной таблицы Access использует значение в полях timestamp, чтобы определить, была ли изменена запись перед обновлением. Как правило, поле timestamp обеспечивает лучшую производительность и надежность. Без поля timestamp SQL Server проверить все поля записи, чтобы определить, изменилось ли запись, что замедляет производительность.

    В таблице ниже описаны параметры, доступные в этом списке.

Параметр

Описание

Да, позвольте мастеру решить

Если исходные таблицы Access содержат поля с плавающей заосьм (Single или Double), Memo или объект OLE, мастер создания новых полей временной шкалы в итоговых SQL Server таблицах для этих полей.

Да, всегда

Мастер вверх создает поле timestamp для всех таблиц upsized, независимо от типов полей, которые они содержат. Это повышает производительность таблиц Access болеего размера, которые могут не содержать поле Memo, объект OLE или поля с плавающей за точкой, но содержат поля других типов.

Нет, Никогда

Мастер не добавляет в таблицы поля timestamp.

Важно: В связанных SQL Server таблицАх Access не проверяет, не изменились ли поля объектов Memo или OLE, так как они могут иметь большой размер в мегабайтах, а сравнение может быть слишком много сетевым и затратным временем. Поэтому, если изменилось только текстовое поле или поле изображения, а поле timestamp не было, Access переопишет это изменение. Кроме того, может казаться, что значение поля с плавающей точкой изменилось, если этого не сделать, поэтому при отсутствии поля timestamp Access может определить, что запись была изменена, если она не была изменена.

  • Только создайте структуру таблицы и не измевайте данные    Мастер настройки по умолчанию SQL Server все данные. Если выбрать только структуру таблицы, не меняйте размер, только структура данных будет больше.

К началу раздела

Шаг 4. Выбор upsize your application

На следующей странице мастера можно выбрать один из трех способов. В области "Какие изменения в приложениях нужно внести?",выберите один из следующих параметров:

  • Создание нового клиентского или серверного приложения Access    Если выбран этот параметр, мастер создания проектов Access создает новый проект. Мастер настройки запросит имя, которое будет по умолчанию называться текущей базой данных Access, добавит суффикс CS, а затем хранит проект в том же расположении, что и существующая база данных Access.

    Мастер создания проектов Access создаст файл проекта Access, а затем на него понизит размер всех объектов базы данных из базы данных Access до проекта Access. Если не сохранить пароль и ИД пользователя, то при первом открыть проект Access откроется диалоговое окно "Свойства связи с данными", в результате чего вы сможете подключиться к базе SQL Server данных.

  • Связыва SQL Server таблиц с существующим приложением    При выборе этого параметра мастер изменяет базу данных Access так, чтобы запросы, формы, отчеты и страницы доступа к данным использовали данные из новой базы данных SQL Server, а не в базе данных Access. Мастер переименовыв таблицы Access, размер в которые вы хотите ввести, суффиксом "_local". Например, если вы укаплили таблицу "Сотрудники", она будет переименована в Employees_local базе данных Access. Затем мастер создания таблицы с именем "Сотрудники SQL Server с именем "Сотрудники".

    Примечание: После завершения операции этого действия таблицы, переименованные в суффикс "_local", больше не будут использоваться. Однако следует хранить локальные таблицы до тех пор, пока вы не убедитесь в успешном результате. Позже вы можете удалить локальные таблицы, чтобы уменьшить размер базы данных Access. Не забудьте сделать это перед удалением таблиц.

    Запросы, формы, отчеты и страницы доступа к данным, основанные на исходных таблицах Employees, теперь будут использовать связанную таблицу SQL Server Employees. Многие свойства полей исходной локальной таблицы наследуются новой локальной таблицей, включая Description,Caption,Format,InputMaskи DecimalPlaces.

  • Изменения в приложениях не внося    Выберите этот параметр, если вы хотите скопировать данные только в SQL Server базу данных, а не вносить другие изменения в существующее приложение базы данных Access.

Сохранение пароля и ИД пользователя    По умолчанию мастер настройки создает связанные таблицы в существующем приложении или проект Access без сохранения имени пользователя и пароля. Это означает, что каждый раз при входе в базу данных пользователям будет SQL Server имя пользователя и пароль.

Если выбрать "Сохранить пароль и ИДпользователя", пользователи смогут подключаться к базе SQL Server, не входя в нее. Если вы выбрали "Создать новое клиент-серверноеприложение Access", проект Access сохраняет пароль имени пользователя в строке подключения OLE DB.

Примечание: Этот параметр отключен для параметра "Нет изменений приложения", если для связанной таблицы SQL Server настроена таблица MSysConf, которая не может запретить сохранение паролей.

Отчет мастера по модернизации

При нажатиикнопки "Готово" мастер создания отчетов с подробным описанием всех созданных объектов и отчетом об ошибках, которые были допущены в процессе. Мастер форматизации отображает отчет в режиме предварительного просмотра, и вы можете распечатать или сохранить его, например в формате XPS или PDF. Отчет не будет сохранен как объект Access при закрытии окна предварительного просмотра.

Отчет мастера по модернизации содержит сведения о следующих:

  • Upsizing parameters, including what table attributes you chose to upsize and how you upsized.

  • Сведения о таблице, включая сравнение значений Access и SQL Server имен, типов данных, индексов, правил проверки, значений по умолчанию, триггеров и того, были ли добавлены отметки времени.

  • Любые ошибки, такие как заполнение базы данных или журнала транзакций, несолежащие разрешения, устройство или база данных не созданы, таблица, правило по умолчанию или правило проверки пропускаются, отношение не принудительно, запрос пропускается (так как его нельзя перевести в синтаксис SQL Server), а также ошибки преобразования элемент управления и источник записей в формах и отчетах.

К началу раздела

К началу страницы

Как получить размер объектов базы данных

Размер следующих объектов базы данных и данных:

  • Типы данных и данные    Все типы данных Access преобразуются в эквивалентные в SQL Server. Мастер преобразует текст базы данных Access в Юникод, добавляя идентификатор строки Юникода ко всем строкам и добавляя префикс Юникод n ко всем типам данных.

  • Запросы    

    • Запросы на выборки без предложения ORDER BY или параметров преобразуются в представления.

    • Запросы на действия преобразуются в запросы на действия с хранимой процедурой. Access добавит set NOCOUNT ON после кода объявления параметров, чтобы убедиться, что хранимая процедура выполняется.

    • Запросы, которые ссылаются только на таблицы (базовые запросы), в которые используются параметры или предложение ORDER BY, преобразуются в пользовательские функции. При необходимости в запрос, содержащий предложение ORDER BY, добавляется предложение TOP 100 PERCENT.

    • Запросы с параметрами с именами сохраняют исходное текстовое имя, используемого в базе данных Access, и преобразуются в хранимые процедуры или пользовательские функции.

      Примечание: Может потребоваться вручную преобразовать запросы, которые не меняли его( например, запросы к SQL, запросы определения данных и перекрестные запросы. Вам также может потребоваться вручную upsize queries that were nested too deeply.

  • Формы, отчеты и элементы управления    SQL в свойствах RecordSource,ControlsSource и RowSource для форм, отчетов и элементов управления сохраняются и не преобразуются в хранимые процедуры или пользовательские функции.

  • Свойства запуска    Мастер upsizing upsizing upsizes следующих свойств запуска:

    StartUpShowDBWindow
    StartUpShowStatusBar
    AllowShortcutMenus
    AllowFullMenus
    AllowBuiltInToolbars
    AllowToolbarChanges
    AllowSpecialKeys
    UseAppIconForFrmRpt
    AppIcon
    AppTitle
    StartUpForm
    StartUpMenuBar
    StartupShortcutMenuBar

  • Модули и макрос    Мастер преобразования в него не изменяет модули и макрос. Возможно, вам потребуется изменить приложение, чтобы использовать все SQL Server его функций. Дополнительные сведения см. в статье MSDN "Оптимизация Microsoft Office приложений Access, связанныхс SQL Server.

К началу страницы

Нужна дополнительная помощь?

Совершенствование навыков
Перейти к обучению

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?

Спасибо за ваш отзыв!

×