Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las instrucciones personalizadas enseñan a GitHub Copilot los estándares de tu equipo para que cada respuesta, ya sea en el modo de consulta, en el modo de agente o en el autocompletado en línea, siga tus convenciones de nomenclatura, formato y tipos de datos. Un único archivo Markdown con ámbito de .sql archivos cambia la salida genérica de Transact-SQL (T-SQL) en una salida alineada que coincida con el proyecto.
Tip
Las instrucciones personalizadas se aplican a todos los ámbitos de GitHub Copilot que coincidan con el patrón glob applyTo, incluidos el modo de consulta, el modo de edición, el modo de agente y las finalizaciones insertadas en línea. Establézcalos una vez por idioma o dominio.
Conclusiones clave
- Las instrucciones personalizadas están en
.github/instructions/<name>.instructions.mddentro de tu espacio de trabajo. - La clave
applyTodel bloque de metadatos asocia cada archivo con un patrón glob, como**/*.sql. - GitHub Copilot inserta instrucciones coincidentes en cada solicitud automáticamente. No se requiere ningún comando de barra diagonal.
- Sin instrucciones personalizadas, GitHub Copilot adopta por defecto convenciones genéricas (PascalCase, claves primarias
INT, sin plantillas de archivo).
Prerequisites
- Visual Studio Code con la extensión MSSQL instalada.
- Una suscripción de GitHub Copilot activa.
- Una carpeta del área de trabajo. En este inicio rápido se crean nuevos archivos en
.github/instructions/.
¿Qué son las instrucciones personalizadas?
Las instrucciones personalizadas son archivos Markdown que GitHub Copilot lee y se aplica a cada solicitud que coincida con un patrón global. Visual Studio Code los admite de forma nativa. La extensión MSSQL no requiere ninguna configuración adicional.
Cada herramienta de codificación de inteligencia artificial (AI) seria ahora admite una versión de este patrón: Cursor usa .cursorrules, OpenAI Codex usa AGENTS.md, Anthropic de Claude Code usa CLAUDE.md. GitHub Copilot de Visual Studio Code usa .github/instructions/*.instructions.md. La ventaja es que puedes tener varios archivos de instrucciones asociados a distintos tipos de archivo en el mismo repositorio.
Para consultar la documentación general de Visual Studio Code sobre esta característica, consulte Personalizar las respuestas de IA en Visual Studio Code.
¿Por qué las instrucciones personalizadas son importantes para T-SQL?
El GitHub Copilot moderno genera un T-SQL impresionante de forma predeterminada: columnas NVARCHAR, marcas de tiempo DATETIME2 y nombres de restricciones adecuados. Pero usa por defecto convenciones que tu equipo podría no utilizar.
Sin instrucciones personalizadas, GitHub Copilot suele:
- Usa PascalCase para los nombres de tabla y columna (
UserID,CreatedAt) en lugar de los decamelCaseosnake_casede su equipo. - Usa
INTclaves principales en lugar deBIGINT. -
Omite las plantillas de encabezado de archivo,
SET ANSI_NULLS ONySET QUOTED_IDENTIFIER ON. -
Omite la calificación del esquema (
CREATE TABLE usersen lugar deCREATE TABLE dbo.users). - Genera restricciones con nombre automático en lugar de seguir el
PK_tableName/FK_child_parentpatrón.
Ninguno de estos valores predeterminados es incorrecto. No son tuyos. Las instrucciones personalizadas corrigen todo esto con un único archivo.
Creación de un archivo de convenciones de T-SQL
En este ejemplo se crea un archivo de instrucciones que impone la nomenclatura camelCase, la cualificación de esquema, las columnas de auditoría y una plantilla de encabezado de archivo.
Paso 1: Usar GitHub Copilot para crear el archivo
- En Visual Studio Code, abra la vista Copilot Chat de GitHub.
- Seleccione el icono de configuración (engranaje) y, a continuación, elija Instrucciones y reglas>Nuevo archivo de instrucciones.
- Cuando se le solicite una ubicación, seleccione
.github/instructions. - Cuando se le solicite un nombre de archivo, escriba
tsql-conventions.
Visual Studio Code crea .github/instructions/tsql-conventions.instructions.md con un bloque de metadatos iniciales generado automáticamente.
Paso 2: Agregar las convenciones
Sustituya el contenido predefinido por los estándares T-SQL de su equipo. En la plantilla siguiente se tratan los nombres, los tipos de datos, las columnas de auditoría, la calificación de esquema, la nomenclatura de restricciones y los patrones prohibidos.
---
applyTo: "**/*.sql"
---
# T-SQL conventions
## Database environment
- Local development: [!INCLUDE [sssql25-md](../../../includes/sssql25-md.md)] running in a Docker container
- Cloud / production: Azure SQL Database
- All T-SQL must be compatible with both environments
## File template
Every .sql file MUST begin with this header block:
-- ================================================================
-- Author: <your name>
-- Created: <YYYY-MM-DD>
-- Purpose: <brief description>
-- ================================================================
SET ANSI_NULLS ON;
GO
SET QUOTED_IDENTIFIER ON;
GO
## T-SQL conventions
- Use camelCase for ALL identifiers: table names, column names, parameters
- Use NVARCHAR for all text columns - never VARCHAR
- Use BIGINT for all primary keys and foreign keys - never INT
- Every table MUST include these audit columns:
createdAt DATETIME2(7) NOT NULL DEFAULT GETUTCDATE()
updatedAt DATETIME2(7) NOT NULL DEFAULT GETUTCDATE()
- Always schema-qualify all objects: dbo.tableName
- Use clustered primary keys on all tables
- Foreign key column names follow the pattern: [referencedTable]Id
- Never use SELECT * - always name columns explicitly
## Constraint naming conventions
- Primary keys: PK_tableName
- Foreign keys: FK_childTable_parentTable
- Unique constraints: UQ_tableName_columnName
- Check constraints: CK_tableName_columnName
- Default constraints: DF_tableName_columnName
## What to avoid
- Do NOT generate stored procedures unless I explicitly ask for one
- Do NOT use deprecated T-SQL syntax (no *= for joins, no non-ANSI joins)
- Do NOT generate object-relational mapping (ORM) models or application code
Paso 3: Guardar el archivo
GitHub Copilot recoge los archivos de instrucciones tan pronto como guarde. No hay ningún paso de recarga ni configuración.
Ver el contraste antes y después
Para ver el impacto de las instrucciones personalizadas, ejecuta la misma indicación en GitHub Copilot Chat antes y después de añadir el archivo.
Antes: no hay instrucciones personalizadas
En un espacio de trabajo sin la carpeta .github/instructions/, pregunta a GitHub Copilot:
Create a users table and a projects table for a task management app.
Salida típica:
-
CREATE TABLE Users(sin calificación de esquema, PascalCase) UserID INT IDENTITY(1,1) PRIMARY KEY- No hay bloque de cabecera de archivo ni sentencias
SET - Restricciones nombradas automáticamente o inconsistentes
Después: con instrucciones personalizadas
En el área de trabajo en la que creaste tsql-conventions.instructions.md, haz la misma solicitud:
Create a users table and a projects table for a task management app.
Resultado esperado:
- Encabezado de archivo completo con autor, fecha, propósito,
SET ANSI_NULLS ON,SET QUOTED_IDENTIFIER ON -
CREATE TABLE dbo.users(aptos para el esquema, camelCase) userId BIGINT IDENTITY(1,1) PRIMARY KEY- Columnas de auditoría
createdAtyupdatedAt - Restricciones con nombre:
PK_users,UQ_users_email,FK_projects_users, ,DF_users_createdAt
El mismo modelo, el mismo prompt, el mismo GitHub Copilot. El archivo de instrucciones realizó el trabajo.
Comprobación de que se aplican instrucciones personalizadas
Para confirmar que GitHub Copilot está leyendo el archivo de instrucciones, inspeccione la salida de depuración.
- En Visual Studio Code, seleccione Ver>salida.
- En la lista desplegable canal de salida, seleccione GitHub Copilot o GitHub Copilot Chat.
- Envíe un mensaje y vea el canal de salida. La carga completa de la solicitud, incluidas las instrucciones personalizadas, aparece en el registro.
Esta vista de depuración es el origen de la verdad. Si la salida no contiene las instrucciones, compruebe lo siguiente:
- El archivo reside en
.github/instructions/<name>.instructions.md(se requiere el.instructions.mdsufijo). - El glob
applyTocoincide con el archivo en el que está trabajando. - El archivo se guarda.
Patrones y procedimientos recomendados
- Un archivo por idioma o dominio. Use archivos independientes para T-SQL, TypeScript, Python, etc., cada uno con su propio
applyToglob. No mezcle idiomas en un archivo. - Mantenlo declarativo. Las viñetas y las reglas cortas funcionan mejor que la prosa. GitHub Copilot sigue las instrucciones de forma más confiable cuando se pueden examinar.
- Control de versiones de los archivos. Confirme
.github/instructions/en el repositorio para que cada colaborador se beneficia automáticamente. - Vincúlalo con el modo de planificación. Cuando se usa el modo de plan para el diseño de la base de datos, las convenciones se heredan automáticamente. No necesitas volver a mencionarlos en el prompt.
- Pruebe después de los cambios. Use la vista de depuración para confirmar que se aplican las instrucciones cada vez que actualice el archivo.
Compartir la experiencia
Para ayudarnos a refinar y mejorar GitHub Copilot para la extensión MSSQL, use la siguiente plantilla de problema de GitHub para enviar sus comentarios: Comentarios de GitHub Copilot
Al enviar comentarios, considere la posibilidad de incluir:
Escenarios probados: Háganos saber en qué áreas se ha centrado, por ejemplo, la creación de esquemas, la generación de consultas, la seguridad, la localización.
Lo que funcionó bien: describa las experiencias que se sintieron suaves, útiles o superaron sus expectativas.
Problemas o errores: incluya cualquier problema, incoherencias o comportamientos confusos. Las capturas de pantalla o las grabaciones de pantalla son especialmente útiles.
Sugerencias para mejorar: comparta ideas para mejorar la facilidad de uso, expandir la cobertura o mejorar las respuestas de GitHub Copilot.
Contenido relacionado
- Cómo funciona GitHub Copilot con la extensión MSSQL
- Inicio rápido: Uso del modo de plan para el diseño de bases de datos controladas por especificaciones
-
Inicio rápido: Chatear con el
@mssqlparticipante (modo preguntar) - Inicio rápido: Uso del modo agente de Copilot de GitHub
- Personalización de respuestas de IA en Visual Studio Code
- Limitaciones y problemas conocidos