У нас есть несколько сценариев SQL, которые генерируются из модели сущности, и их нужно запускать в правильном порядке + есть несколько сценариев заполнения, которые вставляют некоторые тестовые данные в БД.
Теперь мне нужно открыть каждый из этих script в визуальной студии в правильном порядке и нажать выполнить SQL (ctrl shift E)
Есть ли способ создать что-то вроде Master.sql и внутри, я хотел бы использовать некоторые include. Что-то вроде:
BEGIN TRANSACTION
ImportOrInclude myDB1.sql
ImportOrInclude myDB2.sql
...
COMMIT
Мне нужно это только для запуска из visual studio, это не будет частью самого приложения.
Как это сделать?
Edit
Я обнаружил, что есть что-то, называемое SQLCMD Scripts, которое может импортировать файл SQL http://msdn.microsoft.com/en-us/library/aa833281%28v=vs.80%29.aspx
Но мой вопрос заключается в том, как получить текущий путь каталога решений в команде : r
РЕДАКТИРОВАТЬ 2
Итак, я нашел, как это сделать, но не идеально, но работает. Плохо то, что $(SolutionDir) не загружается из переменных VS, поэтому вам нужно настроить его вручную. Этот код предназначен для работы в visual studio:
-- turn on in menu: Data -> Transact SQL editor -> SQL CMD mode
-- set this to path where the .sln file is.
:setvar SolutionDir C:\_work\projectname\
:!! echo $(SolutionDir)Maa.EntityModel.All\DbWEntityModel.edmx.sql
:r $(SolutionDir)Maa.EntityModel.All\DbWEntityModel.edmx.sql
go
:!! echo $(SolutionDir)Maa.EntityModel.All\DblQEntityModel.edmx.sql
:r $(SolutionDir)Maa.EntityModel.All\DbQEntityModel.edmx.sql
go