Запустите файл .sql, присутствующий в решении - PullRequest
0 голосов
/ 03 марта 2012

У меня есть файл .sql в моем решении. Этот файл .sql содержит несколько сценариев для создания базы данных, и с помощью этого файла .sql я хочу создать базу данных во время выполнения. У меня есть много фрагментов для запуска файла .sql в C #. Но что, если они присутствуют в моем собственном решении, и решение может быть размещено в любом месте. Да, я могу получить путь к файлу через путь решения и затем выполнить его, но где-то читал, что это желательно . Так должен ли я следовать этому подходу? Будет ли хорошо, если я сделаю это, даже если я публикую свое приложение?

Ответы [ 2 ]

0 голосов
/ 23 апреля 2012

Поместите все имена сценариев sql в SchemaScripts.sql. Этот файл будет иметь записи, как показано ниже:

:r .\Tables\MyTable.sql
:r .\StoredProcedures\My_SP.sql

Запишите следующий код в командный файл и сохраните его в том же месте файла SchemaScripts.sql:

sqlcmd -b -E -S .\SQLEXPRESS -d DatabaseName -i .\SchemaScripts.sql

Выполнить пакетный файл.

0 голосов
/ 03 марта 2012

Вы должны установить его для компиляции как встроенный ресурс, затем вызвать typeof(SomeType).Assembly.GetManifestResourceStream("YourNamespace.FileName.sql")

...