использование msbuild для создания sql базы данных

Существует ли хорошее учебное руководство для Создания базы данных с помощью msbuild?

jean paul boodhoo делает это с помощью nant в этом сообщении. он устанавливает свойства, которые будут использоваться в nant файле типа "build"


  
  
  
   
  
  

затем может создать базу данных с помощью командной строки как это..

c:\> build builddb

Я установил пакет Расширения MSBuild, но я не мог найти, где ввести строку подключения для соединения с базой данных

Спасибо

РАЗРЕШЕННЫЙ

 
  
  
    
      <_Command>-Q  "SELECT * FROM Users"
      <_Command2>-i  test.sql
    
    
  

и Constants.proj похож на это


  
    C:\Program Files\Microsoft SQL Server\90\Tools\Binn
    NorthwindTest
    (local)\SQLEXPRESS 
    data source=$(serverInstance);Integrated Security=SSPI;Initial Catalog=$(initialCatalog)
    "$(sqlToolsFolder)\osql.exe"
    $(osqlExe) -U someuser -P somepassword -d $(initialCatalog) -S (local)\SQLEXPRESS
    
  

затем в по сравнению с выполненной командной строкой

msbuild db.targets/t:QueryDb

команда, которая выполнения являются этим "C:\Program Files\Microsoft SQL Server\90\Tools\Binn\osql.exe"-U someuser-P somepassword-d NorthwindTest-S (локальный) \SQLEXPRESS-Q "ВЫБОР * ОТ UserProfile"

Спасибо Sayed

7
задан eiu165 4 January 2010 в 22:33
поделиться

2 ответа

Если вас устраивает подход, использованный в этом посте, то вы можете просто следовать ему и из MSBuild. Например, создайте файл constants.projek (вы можете назвать его как угодно) и db.targets (также назовите его как угодно). И тогда они будут содержать что-то вроде:

constants.proj

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <sqlToolsFolder>C:\Program Files\Microsoft SQL Server\90\Tools\Binn</sqlToolsFolder>
    <osqlConnectionString>-E</osqlConnectionString>
    <initialCatalog>Northwind</initialCatalog>
    <configConnectionString>data source=(local);Integrated Security=SSPI;Initial Catalog=$(initialCatalog)</configConnectionString>
    <databasePath>C:\root\development\databases</databasePath>
    <osqlExe>$(sqlToolsFolder)\osql.exe</osqlExe>
  </PropertyGroup>
</Project>

И затем в db.targets Вы просто построите командную строку с этими свойствами и используете Exec задачу для ее выполнения, как например, следующее.

db.targets

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="constants.targets"/>

  <Target Name="CreateDb">

    <PropertyGroup>
      <_Command> ... FILL IN HERE ... </_Command>
    </PropertyGroup>

    <Exec Command="$(_Command)" />

  </Target>

</Project>
3
ответ дан 7 December 2019 в 10:03
поделиться

Пакет расширения MSBuild содержит задачи (а именно MSBuild.ExtensionPack.Sql2005 и MSBuild.ExtensionPack.Sql2008) по работе с базами данных SQL и следующий пример:

<!-- Create a database -->
<MSBuild.ExtensionPack.Sql2005.Database TaskAction="Create" DatabaseItem="ADatabase2" MachineName="MyServer\SQL2005Instance"/>
<!-- Create the database again, using Force to delete the existing database -->
<MSBuild.ExtensionPack.Sql2005.Database TaskAction="Create" DatabaseItem="ADatabase2" Force="true" Collation="Latin1_General_CI_AI" MachineName="MyServer\SQL2005Instance"/>
3
ответ дан 7 December 2019 в 10:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: