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


Быстрый старт: использование чата и встроенных подсказок GitHub Copilot

GitHub Copilot предоставляет как встроенные предложения при вводе в редакторе кода, так и интерактивный чат. Вы можете задать вопросы участнику чата или давать указания, введя @mssql, а затем свой запрос.

Начало работы

Убедитесь, что вы подключены к базе данных и открываете активное окно редактора с расширением MSSQL. Это подключение позволяет участнику чата @mssql понять контекст вашей среды базы данных, обеспечивая точные предложения с учетом контекста. Без подключения к базе данных участник чата не будет иметь контекст схемы или данных для предоставления значимых ответов.

В следующих примерах используется образец базы данных AdventureWorksLT2022, доступный для загрузки на домашней странице проектов сообщества и примеров Microsoft SQL Server.

Для получения наилучших результатов настройте имена таблиц и схем в соответствии с собственной средой.

Убедитесь, что чат включает @mssql префикс. Например, введите @mssql, а затем ваш вопрос или запрос. Это гарантирует, что участник чата понимает, что вы запрашиваете помощь, связанную с SQL.

Чат с участником чата MSSQL в Visual Studio Code

Используйте участника чата @mssql GitHub Copilot Chat, чтобы предоставить интеллектуальную, контекстуальную помощь в рабочем процессе разработки SQL непосредственно в Visual Studio Code. Независимо от того, создаете ли вы запросы, разрабатываете схему или интегрируете с кодом приложения, GitHub Copilot может помочь вам разработать и понять реляционные модели, создать или оптимизировать код T-SQL, создавать начальные данные, шаблонные миграции ORM, а также объяснить бизнес-логику или проблемы безопасности с помощью естественного языка, адаптированные к контексту подключенной базы данных.

Ниже приведены распространенные варианты использования и примеры того, что можно спросить через участника чата:

Перечислите или исследуйте объекты в схеме базы данных

Задайте вопросы о таблицах, столбцах, схемах и метаданных объектов в вашей базе данных.

Группировать объекты по типу

Show all objects in the `SalesLT` schema of my current database, grouped by type.

Перечислить столбцы и свойства таблицы

List the columns, data types, and nullability of the `SalesLT.Customer` table.

Подсчитайте количество таблиц, представлений и процедур в базе данных

How many tables, views, and procedures are defined in my current database?

Написание простых запросов

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

Вернуть список клиентов на основе последних заказов

Write a T-SQL query to list all customers from `SalesLT.Customer` who placed an order in the last 30 days based on the latest order date.

Вычисление средней суммы заказов на клиента

Generate a query that calculates the average order total per customer from the `SalesLT.SalesOrderHeader` table, sorted descending.

Обновление запроса с помощью другого столбца

Update the previous query to include the full name of each customer from the `SalesLT.Customer` table.

Объяснение связей или концепций

Попросите упрощенные объяснения связей схемы, логики запросов или функций, относящихся к разработке.

Описание связей внешних ключей между таблицами

Describe the foreign key relationship between `SalesLT.SalesOrderHeader` and `SalesLT.Customer` tables in my current database.

Объяснение связей таблиц и участвующих ключей

I'm a developer new to T-SQL. Explain how `SalesLT.SalesOrderHeader` is related to `SalesLT.Customer`, and what keys are involved.

Описание типов векторных данных и параметров использования

Explain how vector data types work in SQL Server and when to use them for AI scenarios.

Создание кода миграции или интеграции

Запрос помощи в создании скриптов миграции с использованием SQL или ORM.

Добавление ограничения внешнего ключа в таблицу

Create a T-SQL script to add a foreign key constraint on `SalesLT.SalesOrderDetail.ProductID` referencing `SalesLT.Product.ProductID`.

Создание скрипта миграции для добавления внешнего ключа

Generate a Sequelize migration to add a foreign key from `SalesLT.SalesOrderDetail.ProductID` to `SalesLT.Product.ProductID`, assuming both exist.

Использование встроенных предложений с помощью GitHub Copilot

Для начала введите запрос T-SQL в новом окне редактора, например SELECT * FROM SalesLT.Customer, и просмотрите встроенные предложения, предоставляемые GitHub Copilot. Предложения будут появляться по мере ввода текста, и вы можете принять их, нажав Tab или Enter.

Кроме того, можно ввести тот же запрос SELECT * FROM SalesLT.Customerнепосредственно в редактор. Затем выделите его, чтобы ✨ проявился значок смарт-действия, который появляется рядом с выделенным запросом. Этот значок предоставляет быстрый доступ к дополнительным параметрам GitHub Copilot, таким как Modify using Copilot настройка запроса, /doc создание документации или возможность задавать общие вопросы GitHub Copilot, связанные с запросом.

Снимок экрана: значок смарт-действия для изменения запросов SQL с помощью GitHub Copilot в Visual Studio Code.

При выборе проверки с помощью GitHub Copilot вы увидите встроенную рекомендацию следующим образом:

Снимок экрана: встроенная рекомендация из GitHub Copilot для оптимизации SQL-запроса в Visual Studio Code.

Вы также можете вызвать GitHub Copilot с помощью ярлыка (⌘+I для macOS/ Ctrl+I для Windows/Linux) и задать вопросы или запросить изменения запроса.

Снимок экрана: вызов GitHub Copilot с помощью сочетания клавиш в Visual Studio Code.

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

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

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

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

  • То, что работало хорошо – Опишите любые виды опыта, которые были легкими, полезными или превзошли ваши ожидания.

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

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