Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Microsoft Fabric
SQL-projekt innehåller deklarativa filer (CREATE-instruktion) för alla objekt i en databas, till exempel tabeller, vyer och lagrade procedurer. Dessa filer kan användas för att skapa nya databaser, uppdatera befintliga databaser eller till och med bara för att spåra databasen i källkontrollen. Ofta börjar vi med ett SQL-projekt när vi har en befintlig databas och vill skapa objekt i SQL-projektet som matchar databasen med minimal ansträngning.
Vissa SQL-projektverktyg innehåller ett enda steg för att skapa ett nytt SQL-projekt från en befintlig databas. Andra verktyg kräver några steg för att skapa ett nytt SQL-projekt och sedan importera objekt från en befintlig databas. Förutom visual studioinstruktionerna (SQL Server Data Tools) fokuserar guiden på SQL-projekt i SDK-stil.
Med alternativ 1 i den här handledningen:
Steg 1: Skapa ett nytt SQL-projekt från en befintlig databas Steg 2: skapa SQL-projektet
Med alternativ 2 i den här självstudien gör du följande:
- Steg 1: Skapa ett nytt tomt SQL-projekt
- Steg 2: Importera objekt från en befintlig databas
- Steg 3: Skapa SQL-projektet
Förutsättningar
- .NET 8 SDK
- Visual Studio 2022 Community, Professional eller Enterprise
- SQL Server Data Tools, SDK-format (förhandsversion) installerat i Visual Studio 2022
- SqlPackage CLI
# install SqlPackage CLI
dotnet tool install -g Microsoft.SqlPackage
# install SqlPackage CLI
dotnet tool install -g Microsoft.SqlPackage
# install Microsoft.Build.Sql.Templates
dotnet new install Microsoft.Build.Sql.Templates
Anmärkning
För att slutföra självstudien behöver du åtkomst till en Azure SQL- eller SQL Server-instans. Du kan utveckla lokalt kostnadsfritt med SQL Server Developer Edition i Windows eller i containrar.
Alternativ 1: Skapa ett nytt SQL-projekt från en befintlig databas
Steg 1: Skapa ett nytt SQL-projekt från en befintlig databas
Från SQL Server-objektutforskaren i Visual Studio högerklickar du på den databas som du vill skapa ett projekt från och väljer Skapa nytt projekt....
I dialogrutan Skapa nytt projekt anger du ett projektnamn som inte behöver matcha ett databasnamn. Verifiera och ändra projektplatsen efter behov. Standardinställningarna för import importerar objekten till mappar efter schema och sedan objekttyp. Du kan ändra importinställningarna för att ändra mappstrukturen eller inkludera behörigheter i de objekt som importeras. Starta importen.
Medan importen fortsätter visas förloppet som meddelanden i dialogrutan Importera databas . När importen är klar visas de importerade objekten i Solution Explorer och loggarna lagras i en fil i projektkatalogen under Import Schema Logs
. Välj Slutför.
Alternativ 1 är inte tillgängligt för kommandoraden. Använd alternativ 2 i stället.
I vyn databasobjektutforskare i VS Code eller Azure Data Studio väljer du en databas som du vill skapa ett projekt från. Högerklicka på databasen och välj Skapa projekt från databas.
Dialogrutan Skapa projekt från databas i Azure Data Studio kräver att projektnamnet och platsen väljs. Standardinställningarna för import importerar objekten till mappar efter schema och sedan objekttyp. Du kan välja en annan mappstruktur eller inkludera behörigheter i de objekt som importeras innan du väljer Skapa.
I VS Code frågar kommandot efter ett projektnamn och en plats. Standardinställningarna för import importerar objekten till mappar efter schema och sedan objekttyp. Du kan välja en annan mappstruktur eller inkludera behörigheter i de objekt som importeras innan importen börjar.
Öppna vyn Databasprojekt för att se det nya projektet och importerade objektdefinitioner.
Alternativ 1 är inte tillgängligt för kommandoraden. Använd alternativ 2 i stället.
Steg 2: Skapa SQL-projektet
Byggprocessen validerar relationerna mellan objekt och syntaxen mot målplattformen som anges i projektfilen. Artefaktutdata från byggprocessen är en .dacpac
fil som kan användas för att distribuera projektet till en måldatabas och som innehåller den kompilerade modellen för databasschemat.
Högerklicka på projektnoden i Solution Exploreroch välj Build.
Utdatafönstret öppnas automatiskt för att visa byggprocessen. Om det finns fel eller varningar visas de i utdatafönstret. I en lyckad version skapas byggartefakten (.dacpac
-filen) dess plats ingår i byggutdata (standardvärdet är bin\Debug\projectname.dacpac
).
Alternativ 1 är inte tillgängligt för kommandoraden. Använd alternativ 2 i stället.
I Database Projects vy över VS Code eller Azure Data Studio högerklickar du på projektnoden och väljer Skapa.
Utdatafönstret öppnas automatiskt för att visa byggprocessen. Om det finns fel eller varningar visas de i utdatafönstret. I en lyckad version skapas byggartefakten (.dacpac
-filen) dess plats ingår i byggutdata (standardvärdet är bin/Debug/projectname.dacpac
).
Alternativ 1 är inte tillgängligt för kommandoraden. Använd alternativ 2 i stället.
Alternativ 2: Skapa ett nytt tomt SQL-projekt och importera objekt från en befintlig databas
Du kan också utföra stegen för att skapa projektet och importera objekt separat.
Steg 1: Skapa ett nytt tomt SQL-projekt
Vi startar vårt projekt genom att skapa ett nytt SQL-databasprojekt innan vi importerar våra objekt till det.
Välj File, Newoch sedan Project.
I dialogrutan Nytt projekt använder du termen SQL Server- i sökrutan. Det översta resultatet bör vara SQL Server Database Project.
Välj Nästa för att gå vidare till nästa steg. Ange ett projektnamn som inte behöver matcha ett databasnamn. Verifiera och ändra projektplatsen efter behov.
Välj Skapa för att skapa projektet. Det tomma projektet öppnas och visas i Solution Explorer för redigering.
Välj File, Newoch sedan Project.
I dialogrutan Nytt projekt använder du termen SQL Server- i sökrutan. Det översta resultatet ska vara SQL Server Database Project, SDK-format (förhandsversion).
Välj Nästa för att gå vidare till nästa steg. Ange ett projektnamn som inte behöver matcha ett databasnamn. Verifiera och ändra projektplatsen efter behov.
Välj Skapa för att skapa projektet. Det tomma projektet öppnas och visas i Solution Explorer för redigering.
I Database Projects vy över VS Code eller Azure Data Studio väljer du knappen Nytt projekt.
Den första prompten avgör vilken projektmall som ska användas, främst baserat på om målplattformen är SQL Server eller Azure SQL. Om du uppmanas att välja en specifik version av SQL väljer du den version som matchar måldatabasen, men om måldatabasversionen är okänd väljer du den senaste versionen eftersom värdet kan ändras senare.
Ange ett projektnamn i textinmatningen som visas, som inte behöver matcha ett databasnamn.
I dialogrutan "Välj en mapp" som visas väljer du en katalog för projektets mapp, .sqlproj
fil och annat innehåll som ska finnas i.
När du tillfrågas om du vill skapa ett SDK-projekt väljer du Ja.
När det är klart öppnas det tomma projektet och visas i vyn Database Projects för redigering.
Med .NET-mallarna för Microsoft.Build.Sql-projekt installerade kan du skapa ett nytt SQL-databasprojekt från kommandoraden. Alternativet -n
anger namnet på projektet och alternativet -tp
anger projektmålplattformen.
Använd alternativet -h
för att se alla tillgängliga alternativ.
# install Microsoft.Build.Sql.Templates
dotnet new sqlproject -n MyDatabaseProject
Steg 2: Importera objekt från en befintlig databas
Högerklicka på projektnoden i Solution Explorer och välj Importera –> databas.... Om det här alternativet är inaktiverat kan databasprojektet ha objekt som skapats i det. Du kan ta bort objekten eller skapa ett nytt projekt.
I dialogrutan Importera databas väljer du anslutningen till den databas som du vill importera objekt från. Om du har anslutit till databasen i SQL Server-objektutforskaren finns den i historiklistan .
Standardinställningarna för import importerar objekten till mappar efter schema och sedan objekttyp. Du kan ändra importinställningarna för att ändra mappstrukturen eller inkludera behörigheter i de objekt som importeras. Starta importen.
Medan importen fortsätter visas förloppet som meddelanden i dialogrutan Importera databas . När importen är klar visas de importerade objekten i Solution Explorer och loggarna lagras i en fil i projektkatalogen under Import Schema Logs
. Välj Slutför för att återgå till projektet.
Vi använder SqlPackage CLI för att importera objekt från en befintlig databas till det nya SQL-databasprojektet som vi skapade i Visual Studio i steg 1. Följande SqlPackage-kommando importerar schemat för en databas till en mapp MyDatabaseProject
som ordnas efter kapslade schema- och objekttypsmappar.
sqlpackage /a:Extract /ssn:localhost /sdn:MyDatabase /tf:MyDatabaseProject /p:ExtractTarget=SchemaObjectType
När dessa mappar placeras i en SQL Database-projektmapp i SDK-format inkluderas de automatiskt i projektet utan att du behöver importera dem eller ändra SQL-projektfilen.
Anmärkning
SQL Database Projects-tillägget i VS Code stöder inte import av objekt från en databas till ett projekt. Använd SQL Database Projects-tillägget i Azure Data Studio för att importera objekt från en databas eller följ alternativ 1 för att skapa ett nytt projekt från en befintlig databas i VS Code.
Öppna vyn Databasprojekt i SQL Database Projects-tillägget i Azure Data Studio. Högerklicka på projektnoden och välj Uppdatera projekt från databasen.
I dialogrutan Uppdatera databas väljer du anslutningen till den databas som du vill importera objekt från. Om du har anslutit till databasen i vyn Anslutningar finns den i historiklistan .
Välj antingen Visa ändringar i schemat jämför för att granska och välj en delmängd av objekt som ska importeras eller Använd alla ändringar för att importera alla objekt.
SqlPackage CLI kan användas för att extrahera schemat för en befintlig databas till en .dacpac
fil eller enskilda .sql
filer. Följande SqlPackage-kommando extraherar schemat för en databas till en .sql
fil som ordnas efter kapslade schema- och objekttypsmappar.
sqlpackage /a:Extract /ssn:localhost /sdn:MyDatabase /tf:MyDatabaseProject /p:ExtractTarget=SchemaObjectType
När dessa mappar placeras i en SQL Database-projektmapp i SDK-format inkluderas de automatiskt i projektet utan att du behöver importera dem eller ändra SQL-projektfilen.
Steg 3: Skapa SQL-projektet
Byggprocessen validerar relationerna mellan objekt och syntaxen mot målplattformen som anges i projektfilen. Artefaktutdata från byggprocessen är en .dacpac
fil som kan användas för att distribuera projektet till en måldatabas och som innehåller den kompilerade modellen för databasschemat.
Högerklicka på projektnoden i Solution Exploreroch välj Build.
Utdatafönstret öppnas automatiskt för att visa byggprocessen. Om det finns fel eller varningar visas de i utdatafönstret. I en lyckad version skapas byggartefakten (.dacpac
-filen) dess plats ingår i byggutdata (standardvärdet är bin\Debug\projectname.dacpac
).
Högerklicka på projektnoden i Solution Exploreroch välj Build.
Utdatafönstret öppnas automatiskt för att visa byggprocessen. Om det finns fel eller varningar visas de i utdatafönstret. I en lyckad version skapas byggartefakten (.dacpac
-filen) dess plats ingår i byggutdata (standardvärdet är bin\Debug\projectname.dacpac
).
I Database Projects vy över VS Code eller Azure Data Studio högerklickar du på projektnoden och väljer Skapa.
Utdatafönstret öppnas automatiskt för att visa byggprocessen. Om det finns fel eller varningar visas de i utdatafönstret. I en lyckad version skapas byggartefakten (.dacpac
-filen) dess plats ingår i byggutdata (standardvärdet är bin/Debug/projectname.dacpac
).
SQL-databasprojekt kan skapas från kommandoraden med hjälp av kommandot dotnet build
.
dotnet build
# optionally specify the project file
dotnet build MyDatabaseProject.sqlproj
Byggutdata innehåller eventuella fel eller varningar och de specifika filer och radnummer där de inträffar. I en lyckad version skapas byggartefakten (.dacpac
-filen) dess plats ingår i byggutdata (standardvärdet är bin/Debug/projectname.dacpac
).