Краткое руководство. Визуальное проектирование схем с помощью встроенных сценариев GitHub Copilot

GitHub Copilot встроен прямо в рабочую область конструктора схем в расширении MSSQL. Вы можете описать, что вам нужно, на естественном языке и наблюдать, как таблицы, столбцы и связи появляются на визуальной диаграмме, пока сценарий Transact-SQL (T-SQL) обновляется в реальном времени. В этом кратком руководстве рассматриваются сценарии, которые позволяют уникально использовать внедренный интерфейс: создание таблиц из выбранного кода в других файлах, добавление связей "многие ко многим", создание тематических тестовых данных и импорт внешних артефактов.

Tip

Используйте конструктор схем с GitHub Copilot, если требуется визуальная обратная связь вместе с проектированием схемы на основе ИИ. Используйте схему на основе чата, @mssql если вы предпочитаете только запросы или не готовы к фиксации визуальных изменений. Справочную документацию по этой функции см. в разделе Интеграция GitHub Copilot в конструкторе схем.

Основные итоги

  • Встроенный в конструктор схем GitHub Copilot — это отдельный канал по сравнению с участником чата @mssql. Он работает непосредственно на визуальном холсте.
  • GitHub Copilot в Конструкторе схем может учитывать контекст из других выделенных фрагментов в редакторе (например, структуру JSON в файле TypeScript).
  • Каждое изменение помещается в панель Copilot Changes для проверки перед публикацией в базе данных.
  • Здесь также применяются пользовательские инструкции .

Prerequisites

  • Visual Studio Code с установленным расширением MSSQL (версия 1.41 или более поздняя).
  • Активная GitHub Copilot подписка.
  • Подключение к базе данных в обозреватель объектов (локальная SQL Server, База данных SQL Azure или база данных SQL в Microsoft Fabric).

Открыть конструктор схем

  1. В обозреватель объектов щелкните правой кнопкой мыши базу данных.
  2. Выберите "Открыть конструктор схем".

Конструктор схем открывается с визуальным представлением существующих таблиц. Панель чата GitHub Copilot отображается вместе с холстом.

Сценарий 1. Создание таблицы из выбранного кода в другом файле

Встроенный в конструктор схем GitHub Copilot может считывать выделенные фрагменты из других окон редактора и использовать их как контекст для создания схемы. Это полезно, если интерфейсный или слой приложений уже имеет жестко закодированные фигуры данных, которые должны стать реальными таблицами.

  1. Откройте исходный файл на отдельной вкладке редактора. Например, компонент React с массивом MAGAZINES_DATA .
  2. Выберите структуру данных в исходном файле.
  3. Перейдите на панель чата конструктора схем и отправьте:
Using the selected JSON structure, create a new table called magazines.

GitHub Copilot:

  • Выбирает межфайловый выбор в качестве контекста.
  • Выводит соответствующие типы данных T-SQL (NVARCHAR, INT, DATETIME2).
  • Учитывает ваши пользовательские инструкции для именования, ограничений и столбцов аудита.
  • Подготавливает новую таблицу на панели Copilot Changes.

Просмотрите предложенную таблицу на холсте, а затем примите или отмените изменение.

Сценарий 2. Добавление связи "многие ко многим"

Если новая таблица должна быть связана с существующими таблицами, попросите GitHub Copilot создать таблицу соединения и внешние ключи.

Add a many-to-many relationship between the magazines table and
the existing authors table. Ensure the foreign key columns align
with the current database schema and reference the correct primary
key columns.

GitHub Copilot создает magazines_authors связующую таблицу с правильными внешними ключами, ссылающимися на обе таблицы. Визуальная схема обновляется для отображения новых линий связи.

Сценарий 3. Создание тематических тестовых данных

После того как схема будет готова, GitHub Copilot сможет создавать реалистичные тестовые данные и загружать их в вашу базу данных.

Seed the magazines and magazines_authors tables with test data.
- Tables already exist - do NOT create or alter them.
- Each magazine should be themed around science or technology.
- Include at least 5 magazines with creative titles, issues, and years.
- Look up existing authors in the database and link each magazine
  to one or more authors.

Перед выполнением просмотрите созданные INSERT инструкции. GitHub Copilot уважает целостность ссылок, просматривая существующие первичные ключи, а не изобретая идентификаторы.

Убедитесь, что данные поступили корректно:

Show me all the data in the magazines table and their linked authors.

Сценарий 4. Начальная загрузка схемы с нуля

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

I'm building a task management app. Create a schema with users,
projects, tasks, and comments. Users can belong to multiple projects
with different roles. Tasks can have multiple assignees. Comments
belong to a task and an author.

GitHub Copilot создает все таблицы, связи, таблицы-связки и ограничения, а затем подготавливает их для проверки. Этот процесс хорошо сочетается с режимом планирования: используйте режим планирования, чтобы сначала продумать схему, а затем передать план в Schema Designer для выполнения.

Сценарий 5. Импорт внешних артефактов

Конструктор схем может создавать элементы схемы из внешних входных данных: JSON-файлы, код приложения, документы или изображения.

Here's a JSON file describing our product catalog structure.
Create tables to represent this data, including appropriate
relationships between products, categories, and variants.

Вложите файл через #file: или перетащите его в чат. GitHub Copilot выводит схему, включая связи, которые не являются явными в исходных данных.

Просмотр изменений перед публикацией

Каждое предлагаемое изменение подготавливается на панели Copilot Changes внизу Schema Designer. Можно сделать следующее:

  • Просмотрите каждый добавленный, измененный или удаленный объект по отдельности.
  • См. точный скрипт T-SQL, который выполняется.
  • Примите , чтобы применить изменение к холсту или отменить его.
  • Когда все готово, выберите "Опубликовать изменения" , чтобы выполнить DDL в базе данных.

Валидация и направляющие меры

GitHub Copilot в конструкторе схем заранее помечает проблемы, прежде чем они достигают базы данных:

  • Таблицы без первичного ключа.
  • Недопустимые типы данных для SQL Server.
  • Проблемы нормализации (например, повторяющиеся группы).
  • Внешние ключи, ссылающиеся на несуществующие столбцы.

Имена, соответствующие схеме (schema.table, schema.column) в представлении диффа, делают каждое предлагаемое изменение однозначной.

Когда использовать это, а когда — проектирование схем через чат

Если вы хотите... Использование
Проектируйте схемы визуально на холсте с функцией drag-and-drop и ИИ Эта статья (конструктор схем с GitHub Copilot)
Проектирование схем с помощью запросов к подключенной базе данных, без холста Обозреватель схем на основе чата с помощью @mssql
Продумайте всю модель данных, прежде чем приступать к разработке Режим плана
Разработка схемы вручную без искусственного интеллекта Конструктор схем

Оставьте свой отзыв

Чтобы помочь нам уточнить и улучшить GitHub Copilot для расширения MSSQL, используйте следующий шаблон проблемы GitHub для отправки отзывов: GitHub Copilot Feedback

При отправке отзывов рассмотрите возможность включения:

  • Тестируемые сценарии: сообщите нам, на какие области вы ориентированы, например создание схемы, создание запросов, безопасность, локализация.

  • Что хорошо работало: Опишите любые ситуации, которые были безупречными, полезными или превысили ваши ожидания.

  • Проблемы или ошибки: любые проблемы, несоответствия или запутанное поведение. Снимки экрана или записи экрана особенно полезны.

  • Предложения по улучшению: поделитесь идеями для улучшения удобства использования, расширения охвата или улучшения ответов GitHub Copilot.