Поделиться через


Руководство. Начало работы с существующей базы данных

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure базе данных SQL в Microsoft Fabric

Проекты SQL содержат декларативные (инструкции CREATE) файлы для всех объектов в базе данных, таких как таблицы, представления и хранимые процедуры. Эти файлы можно использовать для создания новых баз данных, обновления существующих баз данных или даже для отслеживания базы данных в системе управления версиями. Часто мы начинаем с проекта SQL, если у нас есть существующая база данных и хотите создать объекты в проекте SQL, которые соответствуют базе данных с минимальными усилиями.

Некоторые средства проектов SQL включают один шаг для создания нового проекта SQL из существующей базы данных. Другие средства требуют нескольких шагов для создания нового проекта SQL, а затем импорта объектов из существующей базы данных. За исключением инструкций Visual Studio (SQL Server Data Tools), руководство посвящено проектам SQL в стиле ПАКЕТА SDK.

С вариантом 1 в этом руководстве вы:

Шаг 1. Создание проекта SQL из существующей базы данных шаг 2. Создание проекта SQL

С вариантом 2 в этом руководстве вы:

  • Шаг 1. Создание пустого проекта SQL
  • Шаг 2. Импорт объектов из существующей базы данных
  • Шаг 3. Создание проекта SQL

Необходимые компоненты

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

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

Примечание.

Чтобы завершить работу с руководством, вам потребуется доступ к экземпляру SQL Azure или SQL Server. Вы можете разрабатывать локально бесплатно с помощью выпуска разработчика SQL Server в Windows или в контейнерах.

Вариант 1. Создание проекта SQL из существующей базы данных

Шаг 1. Создание проекта SQL из существующей базы данных

В обозревателе объектов SQL Server в Visual Studio щелкните правой кнопкой мыши базу данных, из которой вы хотите создать проект, и выберите "Создать проект...".

Снимок экрана: диалоговое окно импорта базы данных в Visual Studio.

В диалоговом окне "Создание проекта" укажите имя проекта, которое не обязательно совпадает с именем базы данных. Проверьте и измените расположение проекта по мере необходимости. Параметры импорта по умолчанию импортируют объекты в папки по схеме, а затем тип объекта. Параметры импорта можно изменить, чтобы изменить структуру папок или включить разрешения в импортируемые объекты. Запустите импорт.

Пока импорт продолжается, ход выполнения отображается как сообщения в диалоговом окне импорта базы данных . После завершения импорта импортированные объекты отображаются в Обозреватель решений, а журналы хранятся в файле в каталоге проекта.Import Schema Logs Выберите Готово.

Параметр 1 недоступен для командной строки. Вместо этого используйте вариант 2 .

В представлении обозревателя объектов базы данных в VS Code или Azure Data Studio выберите базу данных, из которой вы хотите создать проект. Щелкните правой кнопкой мыши базу данных и выберите "Создать проект из базы данных".

Снимок экрана: диалоговое окно

В Azure Data Studio диалоговое окно "Создание проекта из базы данных " требует выбора имени и расположения проекта. Параметры импорта по умолчанию импортируют объекты в папки по схеме, а затем тип объекта. Вы можете выбрать другую структуру папок или включить разрешения в импортируемые объекты перед нажатием кнопки "Создать".

В VS Code командная строка запрашивает имя и расположение проекта. Параметры импорта по умолчанию импортируют объекты в папки по схеме, а затем тип объекта. Вы можете выбрать другую структуру папок или включить разрешения в импортируемые объекты до начала импорта.

Откройте представление "Проекты базы данных", чтобы просмотреть новый проект и импортированные определения объектов.

Параметр 1 недоступен для командной строки. Вместо этого используйте вариант 2 .

Шаг 2. Создание проекта SQL

Процесс сборки проверяет связи между объектами и синтаксисом для целевой платформы, указанной в файле проекта. Выходные данные артефакта из процесса сборки — это .dacpac файл, который можно использовать для развертывания проекта в целевой базе данных и содержит скомпилированную модель схемы базы данных.

В Обозреватель решений щелкните правой кнопкой мыши узел проекта и выберите "Сборка".

Окно вывода автоматически открывается для отображения процесса сборки. При возникновении ошибок или предупреждений они отображаются в окне вывода. В успешной сборке создается артефакт сборки (.dacpac файл) его расположение включается в выходные данные сборки (по умолчанию bin\Debug\projectname.dacpac).

Параметр 1 недоступен для командной строки. Вместо этого используйте вариант 2 .

В представлении проектов баз данных VS Code или Azure Data Studio щелкните правой кнопкой мыши узел проекта и выберите "Сборка".

Окно вывода автоматически открывается для отображения процесса сборки. При возникновении ошибок или предупреждений они отображаются в окне вывода. В успешной сборке создается артефакт сборки (.dacpac файл) его расположение включается в выходные данные сборки (по умолчанию bin/Debug/projectname.dacpac).

Параметр 1 недоступен для командной строки. Вместо этого используйте вариант 2 .

Вариант 2. Создание пустого проекта SQL и импорт объектов из существующей базы данных

Кроме того, можно выполнить действия по созданию проекта и импорту объектов отдельно.

Шаг 1. Создание пустого проекта SQL

Мы начинаем проект, создав проект базы данных SQL перед импортом объектов в него.

Выберите "Файл", "Создать", а затем "Проект".

В диалоговом окне "Новый проект" используйте термин SQL Server в поле поиска. Главным результатом должен быть проект базы данных SQL Server.

Снимок экрана: диалоговое окно

Нажмите Далее, чтобы перейти к следующему шагу. Укажите имя проекта, которое не обязательно соответствует имени базы данных. Проверьте и измените расположение проекта по мере необходимости.

Выберите Создать, чтобы создать проект. Пустой проект открывается и отображается в Обозреватель решений для редактирования.

Выберите "Файл", "Создать", а затем "Проект".

В диалоговом окне "Новый проект" используйте термин SQL Server в поле поиска. Главным результатом должно быть проект базы данных SQL Server, стиль пакета SDK (предварительная версия).

Снимок экрана: диалоговое окно

Нажмите Далее, чтобы перейти к следующему шагу. Укажите имя проекта, которое не обязательно соответствует имени базы данных. Проверьте и измените расположение проекта по мере необходимости.

Выберите Создать, чтобы создать проект. Пустой проект открывается и отображается в Обозреватель решений для редактирования.

В представлении проектов баз данных VS Code или Azure Data Studio нажмите кнопку "Создать проект".

Снимок экрана: new viewlet.

Первый запрос определяет, какой шаблон проекта следует использовать, в первую очередь, на основе того, является ли целевая платформа SQL Server или SQL Azure. Если появится запрос на выбор определенной версии SQL, выберите версию, соответствующую целевой базе данных, но если целевая версия базы данных неизвестна, выберите последнюю версию в качестве значения позже.

Введите имя проекта в появившемся текстовом вводе, которое не обязательно совпадает с именем базы данных.

В появившемся диалоговом окне "Выбор папки" выберите каталог для папки, .sqlproj файла и другого содержимого проекта.

При появлении запроса на создание проекта в стиле SDK (предварительная версия) нажмите кнопку "Да".

После завершения пустой проект открывается и отображается в представлении проектов баз данных для редактирования.

С установленными шаблонами .NET для проектов Microsoft.Build.Sql можно создать новый проект базы данных SQL из командной строки. Параметр -n указывает имя проекта, а -tp параметр указывает целевую платформу проекта.

Используйте этот параметр, чтобы просмотреть все доступные -h параметры.

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

Шаг 2. Импорт объектов из существующей базы данных

В Обозреватель решений щелкните правой кнопкой мыши узел проекта и выберите import -> Database.... Если этот параметр отключен, в проекте базы данных могут быть созданы объекты. Объекты можно удалить или создать новый проект.

В диалоговом окне импорта базы данных выберите подключение к базе данных, из которой вы хотите импортировать объекты. Если вы подключились к базе данных в обозревателе объектов SQL Server, она присутствует в списке журналов.

Снимок экрана: диалоговое окно импорта базы данных в Visual Studio.

Параметры импорта по умолчанию импортируют объекты в папки по схеме, а затем тип объекта. Параметры импорта можно изменить, чтобы изменить структуру папок или включить разрешения в импортируемые объекты. Запустите импорт.

Пока импорт продолжается, ход выполнения отображается как сообщения в диалоговом окне импорта базы данных . После завершения импорта импортированные объекты отображаются в Обозреватель решений, а журналы хранятся в файле в каталоге проекта.Import Schema Logs Нажмите кнопку "Готово ", чтобы вернуться в проект.

Мы будем использовать интерфейс командной строки SqlPackage для импорта объектов из существующей базы данных в новый проект базы данных SQL, созданный в Visual Studio на шаге 1. Следующая команда SqlPackage импортирует схему базы данных в папку, упорядоченную вложенными папками MyDatabaseProject схемы и типа объектов.

sqlpackage /a:Extract /ssn:localhost /sdn:MyDatabase /tf:MyDatabaseProject /p:ExtractTarget=SchemaObjectType

Если эти папки помещаются в папку проекта базы данных SQL в стиле ПАКЕТА SDK, они автоматически включаются в проект без необходимости импортировать их или изменить файл проекта SQL.

Примечание.

Расширение База данных SQL Projects в VS Code не поддерживает импорт объектов из базы данных в проект. Используйте расширение База данных SQL Projects в Azure Data Studio для импорта объектов из базы данных или следуйте параметру 1, чтобы создать проект из существующей базы данных в VS Code.

В расширении База данных SQL Projects в Azure Data Studio откройте представление "Проекты баз данных". Щелкните правой кнопкой мыши узел проекта и выберите "Обновить проект" из базы данных.

Снимок экрана: диалоговое окно

В диалоговом окне "Обновить базу данных" выберите подключение к базе данных, из которой нужно импортировать объекты. Если вы подключились к базе данных в представлении "Подключения", она присутствует в списке журналов.

Выберите вариант "Просмотреть изменения в схеме", чтобы просмотреть и выбрать подмножество объектов для импорта или применения всех изменений для импорта всех объектов.

Интерфейс командной строки SqlPackage можно использовать для извлечения схемы существующей базы данных в .dacpac файл или отдельные .sql файлы. Следующая команда SqlPackage извлекает схему базы данных в .sql файлы, организованные вложенными папками схемы и типа объектов.

sqlpackage /a:Extract /ssn:localhost /sdn:MyDatabase /tf:MyDatabaseProject /p:ExtractTarget=SchemaObjectType

Если эти папки помещаются в папку проекта базы данных SQL в стиле ПАКЕТА SDK, они автоматически включаются в проект без необходимости импортировать их или изменить файл проекта SQL.

Шаг 3. Создание проекта SQL

Процесс сборки проверяет связи между объектами и синтаксисом для целевой платформы, указанной в файле проекта. Выходные данные артефакта из процесса сборки — это .dacpac файл, который можно использовать для развертывания проекта в целевой базе данных и содержит скомпилированную модель схемы базы данных.

В Обозреватель решений щелкните правой кнопкой мыши узел проекта и выберите "Сборка".

Окно вывода автоматически открывается для отображения процесса сборки. При возникновении ошибок или предупреждений они отображаются в окне вывода. В успешной сборке создается артефакт сборки (.dacpac файл) его расположение включается в выходные данные сборки (по умолчанию bin\Debug\projectname.dacpac).

В Обозреватель решений щелкните правой кнопкой мыши узел проекта и выберите "Сборка".

Окно вывода автоматически открывается для отображения процесса сборки. При возникновении ошибок или предупреждений они отображаются в окне вывода. В успешной сборке создается артефакт сборки (.dacpac файл) его расположение включается в выходные данные сборки (по умолчанию bin\Debug\projectname.dacpac).

В представлении проектов баз данных VS Code или Azure Data Studio щелкните правой кнопкой мыши узел проекта и выберите "Сборка".

Окно вывода автоматически открывается для отображения процесса сборки. При возникновении ошибок или предупреждений они отображаются в окне вывода. В успешной сборке создается артефакт сборки (.dacpac файл) его расположение включается в выходные данные сборки (по умолчанию bin/Debug/projectname.dacpac).

Проекты базы данных SQL можно создавать из командной dotnet build строки с помощью команды.

dotnet build

# optionally specify the project file
dotnet build MyDatabaseProject.sqlproj

Выходные данные сборки включают любые ошибки или предупреждения, а также определенные файлы и номера строк, в которых они происходят. В успешной сборке создается артефакт сборки (.dacpac файл) его расположение включается в выходные данные сборки (по умолчанию bin/Debug/projectname.dacpac).