Udostępnij za pośrednictwem


Wprowadzenie do projektów bazy danych SQL

Dotyczy: SQL Server 2022 (16.x) Azure SQL DatabaseAzure SQL Managed InstanceSQL Database w usłudze Microsoft Fabric

Projekt bazy danych SQL to lokalna reprezentacja obiektów SQL, które składają się na schemat pojedynczej bazy danych, takich jak tabele, procedury składowane lub funkcje. Cykl programowania projektu bazy danych SQL umożliwia zintegrowanie programowania bazy danych z przepływami pracy ciągłej integracji i ciągłego wdrażania (CI/CD) znanymi jako najlepsze rozwiązanie programistyczne.

W tym artykule opisano procedurę tworzenia nowego projektu SQL, dodawania obiektów do projektu oraz kompilowania i wdrażania projektu. Z wyjątkiem instrukcji programu Visual Studio (SQL Server Data Tools), przewodnik koncentruje się na projektach SQL w stylu zestawu SDK.

  1. Tworzenie nowego projektu
  2. Dodawanie obiektów do projektu
  3. Zbuduj projekt
  4. Wdrażanie projektu

Warunki wstępne

# install SqlPackage CLI
dotnet tool install -g Microsoft.SqlPackage

# install Microsoft.Build.Sql.Templates
dotnet new install Microsoft.Build.Sql.Templates

Notatka

Aby ukończyć wdrażanie projektu bazy danych SQL, musisz mieć dostęp do wystąpienia usługi Azure SQL lub programu SQL Server. Możesz programować lokalnie bezpłatnie za pomocą programu SQL Server Developer Edition w systemie Windows lub w kontenerach .

Krok 1. Tworzenie nowego projektu

Rozpoczynamy nasz projekt od utworzenia nowego projektu bazy danych SQL przed ręcznym dodaniem do niego obiektów. Istnieją inne sposoby tworzenia projektu, który umożliwia natychmiastowe wypełnienie projektu obiektami z istniejącej bazy danych, na przykład przy użyciu narzędzi do porównywania schematów .

Wybierz pozycję Plik, Nowy, a następnie Projekt.

W oknie dialogowym Nowy projekt użyj terminu SQL Server w polu wyszukiwania. Najlepszym wynikiem powinien być projekt bazy danych SQL Server .

Zrzut ekranu przedstawiający okno dialogowe Nowy projekt.

Wybierz pozycję Dalej, aby przejść do następnego kroku. Podaj nazwę projektu, która nie musi być zgodna z nazwą bazy danych. Zweryfikuj i zmodyfikuj lokalizację projektu zgodnie z potrzebami.

Wybierz pozycję Utwórz, aby utworzyć projekt. Pusty projekt jest otwierany i widoczny w Eksploratorze rozwiązań do edycji.

Wybierz pozycję Plik, Nowy, a następnie Projekt.

W oknie dialogowym Nowy projekt użyj terminu SQL Server w polu wyszukiwania. Najlepszym wynikiem powinien być projekt bazodanowy SQL Server w stylu SDK (wersja zapoznawcza).

Zrzut ekranu przedstawiający okno dialogowe Nowy projekt.

Wybierz pozycję Dalej, aby przejść do następnego kroku. Podaj nazwę projektu, która nie musi być zgodna z nazwą bazy danych. Zweryfikuj i zmodyfikuj lokalizację projektu zgodnie z potrzebami.

Wybierz pozycję Utwórz, aby utworzyć projekt. Pusty projekt jest otwierany i widoczny w Eksploratorze rozwiązań do edycji.

W widoku Database Projects programu VS Code lub Azure Data Studio wybierz przycisk Nowy projekt.

zrzut ekranu przedstawiający nowy widok.

Pierwszy monit określa, który szablon projektu ma być używany, głównie na podstawie tego, czy platforma docelowa jest programem SQL Server, czy usługą Azure SQL. Jeśli zostanie wyświetlony monit o wybranie określonej wersji programu SQL, wybierz wersję zgodną z docelową bazą danych, ale jeśli docelowa wersja bazy danych jest nieznana, wybierz najnowszą wersję, ponieważ wartość można zmodyfikować później.

Wprowadź nazwę projektu w wyświetlonym tekście, który nie musi być zgodny z nazwą bazy danych.

W wyświetlonym oknie dialogowym "Wybierz folder" wybierz katalog dla folderu projektu, plik .sqlproj oraz inne elementy do przechowywania.

Po wyświetleniu monitu o utworzenie projektu w stylu zestawu SDK wybierz pozycję Tak.

Po zakończeniu pusty projekt zostanie otwarty i widoczny w widoku Database Projects do edycji.

Po zainstalowaniu szablonów platformy .NET dla projektów Microsoft.Build.Sql można utworzyć nowy projekt bazy danych SQL z poziomu wiersza polecenia. Opcja -n określa nazwę projektu, a opcja -tp określa platformę docelową projektu.

Użyj opcji -h, aby wyświetlić wszystkie dostępne opcje.

# install Microsoft.Build.Sql.Templates
dotnet new sqlproject -n MyDatabaseProject

Krok 2. Dodawanie obiektów do projektu

W eksploratorze rozwiązań kliknij prawym przyciskiem myszy węzeł projektu i wybierz pozycję Dodaj, a następnie Table. Zostanie wyświetlone okno dialogowe Dodawanie nowego elementu, w którym można określić nazwę tabeli. Wybierz pozycję Dodaj, aby utworzyć tabelę w projekcie SQL.

Tabela jest otwierana w projektancie tabel programu Visual Studio z definicją tabeli szablonu, w której można dodawać kolumny, indeksy i inne właściwości tabeli. Zapisz plik po zakończeniu wprowadzania początkowych zmian.

Więcej obiektów bazy danych można dodać za pomocą okna dialogowego Dodawanie nowego elementu, takich jak widoki, procedury składowane i funkcje. Uzyskaj dostęp do okna dialogowego, klikając prawym przyciskiem myszy węzeł projektu w eksploratorze rozwiązań i wybierając Dodaj, a następnie żądany typ obiektu. Pliki w projekcie można organizować w foldery za pomocą opcji Nowy folder w obszarze Dodaj.

W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy węzeł projektu i wybierz pozycję Dodaj, a następnie Nowy element. Pojawi się okno dialogowe Dodaj nowy element, wybierz Pokaż wszystkie szablony, a następnie Tabela. Określ nazwę tabeli jako nazwę pliku i wybierz pozycję Dodaj, aby utworzyć tabelę w projekcie SQL.

Tabela jest otwierana w edytorze zapytań programu Visual Studio z definicją tabeli szablonu, w której można dodawać kolumny, indeksy i inne właściwości tabeli. Zapisz plik po zakończeniu wprowadzania początkowych zmian.

Więcej obiektów bazy danych można dodać za pomocą okna dialogowego Dodawanie nowego elementu, takich jak widoki, procedury składowane i funkcje. Uzyskaj dostęp do okna dialogowego, klikając prawym przyciskiem myszy węzeł projektu w eksploratorze rozwiązań i wybierając pozycję Dodaj, a następnie żądany typ obiektu po Pokaż wszystkie szablony. Pliki w projekcie można organizować do folderów za pomocą opcji Nowy folder pod opcją Dodaj.

W widoku Database Projects programu VS Code lub Azure Data Studio kliknij prawym przyciskiem myszy węzeł projektu i wybierz pozycję Dodaj tabelę. W wyświetlonym oknie dialogowym określ nazwę tabeli.

Tabela jest otwierana w edytorze tekstów z definicją tabeli szablonów, w której można dodawać kolumny, indeksy i inne właściwości tabeli. Zapisz plik po zakończeniu wprowadzania początkowych zmian.

Więcej obiektów bazy danych można dodać za pomocą menu kontekstowego w węźle projektu, takich jak widoki, procedury składowane i funkcje. Uzyskaj dostęp do okna dialogowego, klikając prawym przyciskiem myszy węzeł projektu w projektach bazy danych widoku programu VS Code lub narzędzia Azure Data Studio, a następnie żądany typ obiektu. Pliki w projekcie można organizować w foldery za pomocą opcji Nowy folder w obszarze Dodaj.

Pliki mogą być dodawane do projektu poprzez ich tworzenie w katalogu projektu lub w folderach zagnieżdżonych. Zaleca się, aby rozszerzenie pliku było .sql oraz organizowanie plików według typu obiektu lub według schematu i typu obiektu.

Szablon podstawowy tabeli może służyć jako punkt wyjścia do tworzenia nowego obiektu tabeli w projekcie:

CREATE TABLE [dbo].[Table1]
(
    [Id] INT NOT NULL PRIMARY KEY
);

Krok 3. Kompilowanie projektu

Proces kompilacji weryfikuje relacje między obiektami i składnią względem platformy docelowej określonej w pliku projektu. Dane wyjściowe artefaktu z procesu kompilacji to plik .dacpac, którego można użyć do wdrożenia projektu w docelowej bazie danych i zawiera skompilowany model schematu bazy danych.

W eksploratorze rozwiązań kliknij prawym przyciskiem myszy węzeł projektu i wybierz pozycję Build.

Zostanie automatycznie otwarte okno danych wyjściowych w celu wyświetlenia procesu kompilacji. Jeśli występują błędy lub ostrzeżenia, są one wyświetlane w oknie danych wyjściowych. W przypadku pomyślnej kompilacji artefakt kompilacji (plik.dacpac) jest tworzony, a jego lokalizacja jest zawarta w danych wyjściowych kompilacji (wartość domyślna to bin\Debug\projectname.dacpac).

W eksploratorze rozwiązań kliknij prawym przyciskiem myszy węzeł projektu i wybierz pozycję Build.

Zostanie automatycznie otwarte okno danych wyjściowych w celu wyświetlenia procesu kompilacji. Jeśli występują błędy lub ostrzeżenia, są one wyświetlane w oknie danych wyjściowych. W przypadku pomyślnej kompilacji artefakt kompilacji (plik.dacpac) jest tworzony, a jego lokalizacja jest uwzględniona w danych wyjściowych kompilacji (wartość domyślna to bin\Debug\projectname.dacpac).

W widoku Database Projects programu VS Code lub Azure Data Studio kliknij prawym przyciskiem myszy węzeł projektu i wybierz pozycję Build.

Zostanie automatycznie otwarte okno danych wyjściowych w celu wyświetlenia procesu kompilacji. Jeśli występują błędy lub ostrzeżenia, są one wyświetlane w oknie danych wyjściowych. W przypadku pomyślnej kompilacji tworzony jest artefakt kompilacji (plik.dacpac), którego lokalizacja jest zawarta w danych wyjściowych kompilacji (wartość domyślna to bin/Debug/projectname.dacpac).

Projekty bazy danych SQL można tworzyć z poziomu wiersza polecenia przy użyciu polecenia dotnet build.

dotnet build

# optionally specify the project file
dotnet build MyDatabaseProject.sqlproj

Dane wyjściowe kompilacji zawierają błędy lub ostrzeżenia oraz określone pliki i numery wierszy, w których występują. W przypadku pomyślnej kompilacji artefakt kompilacji (plik.dacpac) jest tworzony, a jego lokalizacja jest uwzględniona w danych wyjściowych kompilacji (wartość domyślna to bin/Debug/projectname.dacpac).

Krok 4. Wdrażanie projektu

Skompilowany model schematu bazy danych w pliku .dacpac można wdrożyć w docelowej bazie danych przy użyciu narzędzia wiersza polecenia SqlPackage lub innych narzędzi wdrażania. Proces wdrażania określa niezbędne kroki aktualizacji docelowej bazy danych w celu dopasowania do schematu zdefiniowanego w .dacpac, tworzenia lub zmieniania obiektów zgodnie z potrzebami na podstawie obiektów już istniejących w bazie danych. W rezultacie proces wdrażania jest idempotentny, co oznacza, że można go uruchomić wiele razy bez powodowania problemów i można wdrożyć tę samą wersję .dacpac w wielu bazach danych bez konieczności wstępnego określania ich stanu.

W eksploratorze rozwiązań kliknij prawym przyciskiem myszy węzeł projektu i wybierz pozycję Publikuj....

Zostaje otwarte okno dialogowe publikowania, w którym nawiązujesz połączenie z docelową bazą danych . Jeśli nie masz istniejącego wystąpienia SQL do wdrożenia, baza danych LocalDB ((localdb)\MSSQLLocalDB) jest zainstalowana z programem Visual Studio i może być używana do testowania i programowania.

Określ nazwę bazy danych i wybierz pozycję Publikuj, aby wdrożyć projekt w docelowej bazie danych lub Generuj skrypt w celu wygenerowania skryptu do przejrzenia przed wykonaniem.

W eksploratorze rozwiązań kliknij prawym przyciskiem myszy węzeł projektu i wybierz pozycję Publikuj....

Okno dialogowe publikowania otwiera się, gdzie nawiązujesz połączenie z docelową bazą danych . Jeśli nie masz istniejącego wystąpienia SQL do wdrożenia, baza danych LocalDB ((localdb)\MSSQLLocalDB) jest zainstalowana z programem Visual Studio i może być używana do testowania i programowania.

Określ nazwę bazy danych i wybierz pozycję Publikuj, aby wdrożyć projekt w docelowej bazie danych lub Generuj skrypt w celu wygenerowania skryptu do przejrzenia przed wykonaniem.

W widoku Database Projects programu VS Code lub Azure Data Studio kliknij prawym przyciskiem myszy węzeł projektu i wybierz opcję Publikuj.

Napiwek

Jeśli nie masz dostępnego wystąpienia SQL do wdrożenia, rozszerzenie SQL Database Projects może utworzyć lokalne wystąpienie programu SQL Server dla Ciebie w nowym kontenerze. Po uruchomieniu środowiska uruchomieniowego kontenera, takiego jak Docker Desktop, wybierz pozycję Opublikuj w nowym lokalnym środowisku deweloperskim z SQL Server z listy rozwijanej.

Jeśli masz istniejące wystąpienie SQL do wdrożenia, wybierz pozycję Publikuj do istniejącego serwera SQL, a następnie Nie używaj profilu, jeśli pojawi się monit o profil publikowania.

Jeśli nie skonfigurowano połączenia z docelową bazą danych, zostanie wyświetlony monit o utworzenie nowego połączenia. Nowe dane wejściowe połączenia pytają o nazwę serwera, metodę uwierzytelniania i nazwę bazy danych.

Po skonfigurowaniu połączenia rozpocznie się proces wdrażania. Możesz zdecydować się na automatyczne wykonanie wdrożenia (publikowanie) lub wygenerowanie skryptu do przejrzenia przed wykonaniem (generowanie skryptu).

Interfejs CLI SqlPackage jest używany do wdrażania pliku .dacpac w bazie danych docelowej za pomocą akcji publikowania .

Aby na przykład wdrożyć plik .dacpac w docelowej bazie danych na podstawie parametrów połączenia:

sqlpackage /Action:Publish /SourceFile:bin/Debug/projectname.dacpac /TargetConnectionString:{yourconnectionstring}

Uzyskiwanie pomocy