Partilhar via


Criar um projeto de banco de dados a partir da linha de comando

Importante

O Azure Data Studio será desativado em 28 de fevereiro de 2026. Recomendamos que você use Visual Studio Code. Para obter mais informações sobre como migrar para o Visual Studio Code, visite O que está acontecendo com o Azure Data Studio?

Embora a extensão do Projeto do Banco de Dados SQL forneça uma interface gráfica do usuário para criar um projeto de banco de dados, uma experiência de compilação de linha de comando também está disponível para ambientes Windows, macOS e Linux. As etapas para criar um projeto a partir da linha de comando são diferentes entre projetos SQL no estilo SDK e o formato de projeto SQL anterior não no estilo SDK. Este artigo descreve os pré-requisitos e a sintaxe necessários para criar um dacpac a partir de um projeto SQL na linha de comando para ambos os tipos de projeto SQL.

Projetos SQL no estilo SDK (visualização)

Usar Microsoft.Build.Sql com projetos SQL no estilo SDK é o método preferido para trabalhar com projetos SQL a partir da linha de comando.

Para criar um projeto SQL no estilo SDK a partir da linha de comando no Windows, macOS ou Linux, use o seguinte comando:

dotnet build /p:NetCoreBuild=true

Nota

Os projetos SQL no estilo SDK estão atualmente em visualização.

Projetos SQL não no estilo SDK

A seção a seguir descreve uma solução alternativa para trabalhar com projetos SQL que não sejam no estilo SDK a partir da linha de comando no Windows, macOS e Linux.

Pré-requisitos

  1. Instale e configure a extensão Projetos do Banco de Dados SQL.

  2. As seguintes dlls do .NET Core e o arquivo Microsoft.Data.Tools.Schema.SqlTasks.targets de destino são necessários para criar um projeto de banco de dados SQL a partir da linha de comando de todas as plataformas suportadas pela extensão do Azure Data Studio para Projetos do Banco de Dados SQL. Esses arquivos são criados pela extensão durante a primeira compilação concluída na interface do Azure Data Studio e colocados na pasta da extensão em BuildDirectory. Por exemplo, no Linux, esses arquivos são colocados em ~\.azuredatastudio\extensions\microsoft.sql-database-projects-x.x.x\BuildDirectory\. Copie esses 11 arquivos para uma pasta nova e acessível ou anote sua localização. Este local é referido como DotNet Core build folder neste documento.

    • Microsoft.Data.SqlClient.dll
    • Microsoft.Data.Tools.Schema.Sql.dll
    • Microsoft.Data.Tools.Schema.SqlTasks.targets
    • Microsoft.Data.Tools.Schema.Tasks.Sql.dll
    • Microsoft.Data.Tools.Utilities.dll
    • Microsoft.SqlServer.Dac.dll
    • Microsoft.SqlServer.Dac.Extensions.dll
    • Microsoft.SqlServer.TransactSql.ScriptDom.dll
    • Microsoft.SqlServer.Types.dll
    • System.ComponentModel.Composition.dll
    • System.IO.Packaging.dll
  3. Se o projeto foi criado no Azure Data Studio - pule para Criar o projeto a partir da linha de comando. Se o projeto tiver sido criado no SSDT (SQL Server Data Tools), abra-o na extensão de projeto do Banco de Dados SQL do Azure Data Studio. Abrir o projeto no Azure Data Studio atualiza automaticamente o arquivo com três edições, anotadas sqlproj para suas informações:

    1. Condições de importação
    <Import Condition="'$(NetCoreBuild)' == 'true'" Project="$(NETCoreTargetsPath)\Microsoft.Data.Tools.Schema.SqlTasks.targets"/> 
    <Import Condition="'$(NetCoreBuild)' != 'true' AND '$(SQLDBExtensionsRefPath)' != ''" Project="$(SQLDBExtensionsRefPath)\Microsoft.Data.Tools.Schema.SqlTasks.targets"/>
    <Import Condition="'$(NetCoreBuild)' != 'true' AND '$(SQLDBExtensionsRefPath)' == ''" Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets"/>
    
    1. Referência do pacote
    <ItemGroup>
        <PackageReference Condition="'$(NetCoreBuild)' == 'true'" Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.0" PrivateAssets="All"/>
    </ItemGroup>
    
    1. Destino limpo, necessário para dar suporte à edição dupla no SSDT (SQL Server Data Tools) e no Azure Data Studio
    <Target Name="AfterClean">
        <Delete Files="$(BaseIntermediateOutputPath)\project.assets.json"/>
    </Target>
    

Crie o projeto a partir da linha de comando

Na pasta .NET completa, use o seguinte comando:

dotnet build "<sqlproj file path>" /p:NetCoreBuild=true /p:NETCoreTargetsPath="<DotNet Core build folder>"

Por exemplo, a partir do /usr/share/dotnet Linux:

dotnet build "/home/myuser/Documents/DatabaseProject1/DatabaseProject1.sqlproj" /p:NetCoreBuild=true /p:NETCoreTargetsPath="/home/myuser/.azuredatastudio/extensions/microsoft.sql-database-projects-x.x.x/BuildDirectory"  

Próximos passos