Как загрузить тестовые данные из Excel в проекте базы данных VS2010 - PullRequest
1 голос
/ 13 декабря 2011

Я использую проект базы данных VS2010 и хочу иметь возможность загружать:

  • Справочные данные в любой экземпляр (изолированная разработка, тестирование, ... производство)

  • Тестирование данных только в базах разработки и тестировании.

Насколько я понимаю, справочные данные не проблема, я использую сценарии в сценарии после развертывания, который будет выполняться безоговорочно.

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

Что такое «наилучшая практика» для загрузки тестовых данных в этой ситуации?Могу ли я использовать относительный путь в строке подключения и быть уверенным, что он всегда будет интерпретироваться одинаково на всех компьютерах разработчиков?

Я ожидал найти синтаксис, похожий на | DataDirectory |строка подстановки , которая позволяет указывать путь относительно каталога проекта базы данных.

Ответы [ 2 ]

0 голосов
/ 13 декабря 2011

При дальнейшем чтении, я думаю, что план генерации данных - неподходящий инструмент для этого сценария.

То, что я сейчас делаю, - это создание сценария после развертывания с тестовыми данными, а затем проверка его правильности.выполняется условно с помощью переменных команды SQL.Каждая цель развертывания (изолированная разработка; UAT; PROD) может иметь свой собственный файл переменных команды SQL (.sqlcmdvars), который будет контролировать, запускается ли сценарий.

Например, чтобы загрузить данные теста только для базы данных IsolatedDev,Я могу использовать следующее в сценарии после развертывания:

IF '$(DatabaseName)' = 'IsolatedDev'
BEGIN
    ... insert statements to add test data
END

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

Пожалуйста, не стесняйтесь звонитьс опытом и лучшими практиками.

0 голосов
/ 13 декабря 2011

Используйте Excelreader для загрузки данных Excel в набор данных, используя следующую ссылку http://exceldatareader.codeplex.com/

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