Extensión SQL Server para Visual Studio Code

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics

En este artículo se explica cómo usar la extensión mssql de Visual Studio Code (Visual Studio Code) para trabajar con bases de datos de SQL Server en Windows, macOS y Linux, así como Azure SQL Database, Azure SQL Managed Instance y Azure Synapse Analytics. La extensión mssql de Visual Studio Code permite conectarse a SQL Server, consultar con Transact-SQL (T-SQL) y ver los resultados.

Creación o apertura de un archivo SQL

La extensión mssql habilita los comandos de mssql y T-SQL IntelliSense en el editor de código cuando el modo de lenguaje está establecido en SQL.

  1. Seleccione Archivo>Nuevo archivo o presione Ctrl+N. Visual Studio Code abre de forma predeterminada un nuevo archivo de texto sin formato.

  2. Seleccione Texto sin formato en la barra de estado inferior o presione Ctrl+K>M y seleccione SQL en la lista desplegable de lenguajes.

    Captura de pantalla de la selección de idiomas de Visual Studio Code, modo lenguaje SQL.

    Nota:

    Si es la primera vez que usa la extensión, esta instala el servicio de herramientas de SQL en segundo plano.

Si abre un archivo existente con una extensión de archivo .sql, el modo de lenguaje se establece automáticamente en SQL.

Conectar a SQL Server

Siga estos pasos para crear un perfil de conexión y conectarse a SQL Server.

  1. Presione Ctrl+Mayús+P o F1 para abrir la Paleta de comandos.

  2. Escriba sql para mostrar los comandos de mssql o escriba sqlcon y, luego, seleccione MS SQL: Connect (Conectar) en la lista desplegable.

    Captura de pantalla de la paleta de comandos de Visual Studio Code, filtrada para los comandos

    Nota:

    Un archivo SQL, como el archivo SQL vacío creado, debe tener el foco en el editor de código para poder ejecutar los comandos de mssql.

  3. Seleccione el comando MS SQL: Manage Connection Profiles (Administrar perfiles de conexión).

  4. Luego seleccione Crear para crear un nuevo perfil de conexión para SQL Server.

  5. Siga los mensajes para especificar las propiedades del nuevo perfil de conexión. Después de especificar cada valor, presione Entrar para continuar.

    Propiedad Conexión Descripción
    Nombre del servidor o cadena de conexión ADO Especifique el nombre de la instancia de SQL Server. Use localhost para conectarse a una instancia de SQL Server en el equipo local. Para conectarse a una instancia remota de SQL Server, escriba el nombre del servidor SQL Server de destino o su dirección IP. Para conectarse a un contenedor de SQL Server, especifique la dirección IP del equipo host del contenedor. Si necesita especificar un puerto, use una coma para separarlo del nombre. Por ejemplo, en el caso de un servidor que escucha en el puerto 1401, escriba <servername or IP>,1401.

    La cadena de conexión usa el puerto 1433 de forma predeterminada. Una instancia predeterminada de SQL Server usa el puerto 1433 a menos que se modifique. Si la instancia escucha en el puerto 1433, no es necesario especificar el puerto.
    Como alternativa, puede escribir la cadena de conexión ADO de la base de datos aquí.
    Nombre de la base de datos (opcional) Base de datos que se quiere usar. Para conectarse a la base de datos predeterminada, no especifique aquí ningún nombre de base de datos.
    Tipo de autenticación Seleccione Integrado o Inicio de sesión de SQL.
    Nombre de usuario Si ha seleccionado Inicio de sesión de SQL, escriba el nombre de un usuario con acceso a una base de datos en el servidor.
    Contraseña Escriba la contraseña del usuario especificado.
    Guardar contraseña Presione Entrar para seleccionar y guardar la contraseña. Seleccione No para que se le pida la contraseña cada vez que se use el perfil de conexión.
    Nombre de perfil (opcional) Escriba un nombre para el perfil de conexión, como localhost profile.

    Después de escribir todos los valores y seleccionar Entrar, Visual Studio Code crea el perfil de conexión y se conecta a SQL Server.

    Sugerencia

    Si se produce un error en la conexión, intente diagnosticar el problema a partir del mensaje de error del panel Salida de Visual Studio Code. Para abrir el panel Salida, seleccione Ver>Salida. Además, revise las recomendaciones para solucionar problemas de conexión.

  6. Compruebe la conexión en la barra de estado inferior.

    Captura de pantalla de Visual Studio Code, estado de la conexión.

Como alternativa a los pasos anteriores, también puede crear y editar perfiles de conexión en el archivo de configuración de usuario (settings.json). Para abrir el archivo de configuración, seleccione Archivo>Preferencias>Configuración. Para obtener más información, vea Administración de perfiles de conexión.

Cifrado y certificado de servidor de confianza

A partir de la extensión mssql para VS Code v1.17.0:

  • La propiedad Encrypt está habilitada (establecida en True) de manera predeterminada para las conexiones del proveedor de MSSQL.
  • SQL Server debe configurarse con un certificado TLS, firmado por una entidad de certificación raíz de confianza

Además, si se produce un error en un intento de conexión inicial con el cifrado habilitado (valor predeterminado), la extensión mssql proporcionará una solicitud de notificación con la opción para intentar la conexión con el certificado de servidor de confianza habilitado.

Puede editar las propiedades de certificado de servidor Encrypt y Trust en el archivo de configuración de usuario (settings.json). El procedimiento recomendado consiste en facilitar la conexión cifrada de confianza con el servidor.

Captura de pantalla de GUI de Visual Studio Code, notificación con solicitud para certificado de servidor de confianza.

Los usuarios que se conectan a Azure SQL Database no necesitan cambios en las conexiones guardadas existentes. Azure SQL Database admite conexiones cifradas y está configurada con certificados de confianza.

Si la propiedad Encrypt está establecida en True, los usuarios que se conectan en el entorno local de SQL Server o que conectan SQL Server en una máquina virtual, deben asegurarse de que tienen un certificado de una entidad de certificación de confianza (no un certificado autofirmado, por ejemplo). Como alternativa, puede optar por conectarse sin cifrado (Encrypt establecido en False) o confiar en el certificado del servidor (Encrypt establecido en True y Trust server certificate establecido en True).

Crear una base de datos

  1. En el nuevo archivo SQL que ha iniciado anteriormente, escriba sql para mostrar una lista de fragmentos de código modificables.

    Captura de pantalla de la interfaz gráfica de usuario de Visual Studio Code, fragmentos de código SQL.

  2. Seleccione sqlCreateDatabase.

  3. En el fragmento de código, escriba TutorialDB para reemplazar "DatabaseName":

    -- Create a new database called 'TutorialDB'
    -- Connect to the 'master' database to run this snippet
    USE master
    GO
    IF NOT EXISTS (
       SELECT name
       FROM sys.databases
       WHERE name = N'TutorialDB'
    )
    CREATE DATABASE [TutorialDB]
    GO
    
  4. Presione Ctrl+Mayús+E para ejecutar los comandos de Transact-SQL. Vea los resultados en la ventana de consulta.

    Captura de pantalla de Visual Studio Code, crear mensajes de base de datos.

    Sugerencia

    Puede personalizar las teclas de método abreviado de los comandos de mssql. Vea Personalización de accesos directos.

Creación de una tabla

  1. Elimine el contenido de la ventana del editor de código.

  2. Presione Ctrl+Mayús+P o F1 para abrir la Paleta de comandos.

  3. Escriba sql para mostrar los comandos de mssql o escriba sqluse y, luego, seleccione el comando MS SQL: Use Database (Usar base de datos).

  4. Seleccione la nueva base de datos TutorialDB.

    Captura de pantalla de Visual Studio Code, elección de una base de datos.

  5. En el editor de código, escriba sql para mostrar los fragmentos de código, seleccione sqlCreateTable y presione Entrar.

  6. En el fragmento de código, escriba Employees como nombre de la tabla.

  7. Presione Tab para ir al siguiente campo y luego escriba dbo como nombre del esquema.

  8. Reemplace las definiciones de columna por las columnas siguientes:

    EmployeesId INT NOT NULL PRIMARY KEY,
    Name [NVARCHAR](50)  NOT NULL,
    Location [NVARCHAR](50)  NOT NULL
    
  9. Presione Ctrl+Mayús+E para crear la tabla.

Inserción y consulta

  1. Agregue las siguientes instrucciones para insertar cuatro filas en la tabla Employees.

    -- Insert rows into table 'Employees'
    INSERT INTO Employees
       ([EmployeesId],[Name],[Location])
    VALUES
       ( 1, N'Jared', N'Australia'),
       ( 2, N'Nikita', N'India'),
       ( 3, N'Tom', N'Germany'),
       ( 4, N'Jake', N'United States')
    GO
    -- Query the total count of employees
    SELECT COUNT(*) as EmployeeCount FROM dbo.Employees;
    -- Query all employee information
    SELECT e.EmployeesId, e.Name, e.Location
    FROM dbo.Employees as e
    GO
    

    A medida que escribe, T-SQL IntelliSense le ayuda a completar las instrucciones:

    Captura de pantalla de Visual Studio Code, T-SQL IntelliSense.

    Sugerencia

    La extensión mssql también tiene comandos que ayudan a crear instrucciones INSERT y SELECT. No se han usado en el ejemplo anterior.

  2. Presione Ctrl+Mayús+E para ejecutar los comandos. Los dos conjuntos de resultados se muestran en la ventana Resultados.

    Captura de pantalla de Visual Studio Code, panel de resultados.

Consulta y guardado del resultado

  1. Seleccione Ver>Editor de diseño>Voltear diseño para cambiar entre un diseño dividido vertical u horizontal.

  2. Seleccione los encabezados de panel Resultados y Mensajes para contraer y expandir los paneles.

    Captura de pantalla de Visual Studio Code, alternancia de encabezados.

    Sugerencia

    Puede personalizar el comportamiento predeterminado de la extensión mssql. Vea Personalización de las opciones de extensión.

  3. Seleccione el icono de maximizar cuadrícula en la segunda cuadrícula de resultados para acercar los resultados.

    Captura de pantalla de Visual Studio Code, Maximizar cuadrícula.

    Nota:

    El icono de maximizar aparece cuando el script de T-SQL genera dos o más cuadrículas de resultados.

  4. Abra el menú contextual de la cuadrícula al hacer clic con el botón derecho en la cuadrícula.

    Captura de pantalla de Visual Studio Code, menú contextual.

  5. Seleccione Seleccionar todo.

  6. Vuelva a abrir el menú contextual de la cuadrícula y seleccione Guardar como JSON para guardar el resultado en un archivo .json.

  7. Especifique un nombre de archivo para el archivo JSON.

  8. Compruebe que el archivo JSON se guarda y se abre en Visual Studio Code.

    Captura de pantalla del editor de Visual Studio Code, Guardar como JSON.

Si necesita guardar y ejecutar scripts de SQL más adelante, para la administración o un proyecto de desarrollo de mayor tamaño, guarde los scripts con una extensión .sql.