У меня есть SQL Server 2008 R2, я хочу перенести данные из MS Access, но когда я попытался использовать SSMA, вариант выбора SQL Server 2008 R2 недоступен.
Любая помощь, пожалуйста, и полезен ли SSIS в моей ситуации?
Если ваша БД не превысит 10 ГБ, SQLServer Express должен работать, и это бесплатно.
+1 выше к 7 июня. В любом случае вы можете использовать эту более позднюю версию ДАЖЕ для создания базы данных 2008 года. Тем не менее, я часто вижу, как некоторые компании «придерживаются» более старой версии, поскольку они заплатили за полную популярную версию, и она имеет более высокую емкость, чем sql express. Однако, если sql express можно использовать для рабочей базы данных, я бы рассмотрел его, но даже если нет, для задачи миграции это идеальный выбор и настройка.
Что ж, на самом деле все сводится к тому, сколько таблиц и сколько взаимосвязей у вас есть в базе данных доступа.
Например, вы можете установить бесплатную версию SQL Server Express на свою рабочую станцию и выполнить локальную миграцию (скажем, в формат SQL 2017).
В этот момент вы можете выбрать сценарий для базы данных, а более поздние версии SSMS (студия управления SQL), безусловно, поддерживают 2008 год. Например, это:
Поэтому не щелкайте правой кнопкой мыши базу данных и не выбирайте «Создать базу данных как», а выберите в меню задач «Создать сценарии».
Из этого мы видим, что 2008 год еще можно заскриптовать.
Хотя, конечно, даже в последней версии sql-сервера вы МОЖЕТЕ создать базу данных более старой версии. Однако, когда вы создаете «предыдущую» версию базы данных (скажем, в последней версии сервера sql, это только ограничивает функции совместимости, но НЕ позволяет вам использовать или создавать резервный файл, созданный для восстановления в предыдущих версиях sql-сервер (сервер sql в этом плане неприятный - вы можете ТОЛЬКО продвигаться вперед с базами данных - отличная возможность, но как только вы переедете, вы не сможете использовать или создавать файлы резервных копий, которые могут быть использованы предыдущими версиями. к предыдущим версиям.
И отчасти это зависит от того, сколько времени вы потратили на использование SSMAA.
И если вы пойдете по указанному выше пути, убедитесь, что вы настроили сопоставления столбцов. Так, например, по умолчанию datetime в доступе преобразуется в datetime2, и я не совсем помню, поддерживает ли 2008 datetime2. (независимо от того, я бы все равно придерживался даты и времени).
Таким образом, даже используя последнюю версию помощника по миграции, вы можете установить (настроить) сопоставления столбцов, и в большинстве случаев вам потребуется 1 или 2 изменения (например, установка по умолчанию даты и времени вместо типов столбцов datetime2).
А получение и настройка SQL Express Local — отличный способ снова и снова тестировать миграцию, поскольку часто первые несколько попыток могут завершиться неудачно или не дать желаемых результатов. На самом деле это еще одна ОГРОМНАЯ причина для принятия SSMAA, поскольку вы можете потратить время на настройку и изменение некоторых вещей, а затем запустить его снова и даже снова.
Теперь, если вы создаете сценарий для всей базы данных (и данных), такие текстовые файлы ДОЛЖНЫ быть большими, и в большинстве случаев вы не можете использовать SSMS (студия управления sql) для загрузки такого сценария, поэтому используйте командную строку sqlcmd .exe для импорта (обработки) этой базы данных со сценариями, которую вы создаете с помощью мастера создания сценариев, описанного выше. Он выдает «большой» текстовый файл, который можно импортировать в 2008.
Я имею в виду, что даже в 2008 году и в ту эпоху SSMS у него есть опция импорта, и вы можете импортировать из баз данных доступа. Однако, когда вы делаете это, PK отбрасываются, индексы отбрасываются, а вместе с ними и отношения.
Итак, для 2-5 таблиц - гы, просто импортировать с помощью ssms.
Однако, если у вас 40 таблиц, куча связей? Тогда да, это большая работа, и я бы на 100% рекомендовал вам использовать помощник по миграции Access. (для изучения требуется немного времени - поначалу это немного сбивает с толку, но как только вы пройдете кривую обучения, я настоятельно рекомендую этот инструмент, если вы хотите переместить много таблиц, сохранить настройки PK и, конечно, сохранить связанные данные нетронутыми.
Срок службы SQL Server 2008 и 2008 R2 истек более года назад, и теперь они имеют статус полностью не поддерживается. Вы действительно должны смотреть на обновление до поддерживаемой версии.