Editor de consultas e IntelliSense

La extensión PostgreSQL para Visual Studio Code proporciona un editor de consultas con finalizaciones de IntelliSense, ejecución de consultas controladas por teclado, una cuadrícula de resultados con opciones de exportación y fragmentos de código integrados. Escriba SQL en una pestaña del editor de VS Code estándar y ejecútelo en cualquier servidor postgreSQL conectado sin salir del IDE.

Prerequisites

Abrir un editor de consultas

Puede abrir un nuevo editor de consultas de varias maneras:

  • En el árbol Conexiones , haga clic con el botón derecho en un nodo de base de datos y seleccione Nueva consulta.
  • Ejecute PGSQL: New Query desde la paleta de comandos (Ctrl+Mayús+P).
  • Abra o cree cualquier archivo con una .sql extensión.

El editor de consultas usa el editor de texto de VS Code con el modo de lenguaje SQL. Al conectar el editor a un servidor, la extensión activa IntelliSense y habilita los comandos de ejecución de consultas.

Conexión y desconexión

Para asociar un editor de consultas a una conexión de base de datos:

Acción Windows o Linux macOS
Connect Ctrl+Mayús+C Cmd+Shift+C
Desconectar Ctrl+Mayús+D Cmd+Mayús+D

También puede ejecutar PGSQL: Connect o PGSQL: Disconnect desde la paleta de comandos.

Cambio del contexto de la base de datos

La base de datos activa para la ejecución de consultas aparece en la barra de estado de VS Code. Para cambiar a otra base de datos:

  1. Seleccione el nombre de la base de datos en la barra de estado o ejecute PGSQL: Change PostgreSQL Database desde la paleta de comandos.
  2. Seleccione la base de datos de destino desde el selector.

El nuevo contexto de base de datos se aplica a todas las ejecuciones de consulta posteriores en ese editor.

Indicador de estado de la conexión

Cuando pgsql.showConnectionStatusLens es true (el valor predeterminado), el editor muestra una lente de código en la parte superior del archivo que muestra el estado de conexión actual. Seleccione la lente para conectarse o cambiar las bases de datos.

IntelliSense

IntelliSense proporciona finalizaciones automáticas con reconocimiento del contexto a medida que escribe SQL en el editor de consultas. La extensión analiza el esquema de la base de datos conectada para sugerir tablas, columnas, funciones y palabras clave.

IntelliSense se activa automáticamente a medida que escribe o puede desencadenarlo manualmente con Ctrl+Espacio (Cmd+Espacio en macOS). Están disponibles los siguientes tipos de finalización:

Tipo de finalización Description
Palabra clave Palabras clave sql como SELECT, FROM, WHERE
Tabla / Vista Tablas y vistas de la base de datos actual
Columna Columnas para tablas a las que se hace referencia en la consulta
Function Funciones integradas y definidas por el usuario
Schema Esquemas disponibles en la base de datos
Sugerencia de unión JOIN cláusulas basadas en relaciones de clave externa

Al escribir JOIN después de una referencia de tabla, IntelliSense sugiere tablas relacionadas y rellena la condición de combinación en función de las relaciones de clave externa.

Configurar IntelliSense

Habilite o deshabilite IntelliSense con la pgsql.intelliSense.enableIntelliSense configuración. IntelliSense está habilitado de forma predeterminada.

Actualización de la caché de IntelliSense

Si cambia el esquema de la base de datos (por ejemplo, agregando tablas o columnas) e IntelliSense no refleja esos cambios, actualice la memoria caché:

  1. Abra la paleta de comandos (Ctrl+Mayús+P).
  2. Ejecute PGSQL: Refresh IntelliSense Cache.

Use este comando después de las migraciones de esquema, los cambios de DDL o los cambios realizados fuera de la sesión del editor actual.

Realizar consultas

La extensión proporciona varias maneras de ejecutar consultas SQL en la base de datos conectada.

Ejecutar una consulta

Use Execute PostgreSQL Query (Ejecutar consulta de PostgreSQL ) para ejecutar SQL en el editor. Si selecciona texto específico, solo se ejecuta el texto seleccionado. Si no se selecciona nada, se ejecuta todo el contenido del editor.

Acción Windows o Linux macOS
Ejecución de una consulta de PostgreSQL Ctrl+Mayús+E o Mayús+Entrar Cmd+Mayús+E o Mayús+Entrar
Ejecutar la sentencia actual de PostgreSQL Ctrl+Mayús+Entrar Ctrl+Mayús+Entrar

Ejecutar instrucción PostgreSQL actual solo ejecuta la instrucción SQL en la posición actual del cursor. Use este comando cuando tenga varias instrucciones en el editor y quiera ejecutar una sin seleccionarla.

Cancelación de una consulta

Para detener una consulta de ejecución prolongada, ejecute PGSQL: Cancel PostgreSQL Query desde la paleta de comandos. La barra de estado muestra el progreso de la ejecución mientras se ejecuta una consulta.

Panel De resultados de la consulta de PostgreSQL

Después de ejecutar una consulta, los resultados aparecen en el panel Resultados de la consulta de PostgreSQL debajo del editor. El panel tiene hasta tres pestañas en función del tipo de consulta.

Pestaña de resultados

La pestaña Resultados muestra la cuadrícula de resultados. Cuando una consulta devuelve varios conjuntos de resultados, cada conjunto aparece en su propia cuadrícula dentro de la pestaña.

La cuadrícula de resultados proporciona estas características para explorar datos:

  • Ordenar: haga clic con el botón derecho en un encabezado de columna y seleccione Ordenar ascendente o Orden descendente. Seleccione Borrar ordenación para quitar la ordenación.
  • Filtro: haga clic con el botón derecho en un encabezado de columna y seleccione Mostrar filtro para restringir las filas mostradas.
  • Cambiar el tamaño de las columnas: arrastre bordes de columna para ajustar el ancho o habilite pgsql.resultsGrid.autoSizeColumns (de forma predeterminada) para ajustar el tamaño de las columnas en función del contenido visible.
  • Numeración de filas: los números de fila aparecen en el lado izquierdo de la cuadrícula.
  • Buscar: use el campo de búsqueda de la barra de herramientas de resultados para buscar valores en la cuadrícula.

Las consultas combinadas y los conjuntos de resultados más amplios usan la misma experiencia de cuadrícula, por lo que puede ordenar, filtrar y examinar columnas relacionadas sin salir del editor.

Copiar datos

Haga clic con el botón derecho en la cuadrícula de resultados para acceder a las opciones de copia:

Option Description
Seleccionar todo Selección de todas las filas del conjunto de resultados
Copy Copiar las celdas seleccionadas al portapapeles
Copiar con encabezados Copiar las celdas seleccionadas con encabezados de columna
Copiar encabezados Copiar solo los encabezados de columna

También puede usar estos métodos abreviados de teclado del panel de resultados (configurables a través de la pgsql.shortcuts configuración):

Acción Acceso directo predeterminado
Copiar selección Ctrl+C
Seleccionar todo Ctrl+A
Alternar el panel de resultados Ctrl+Alt+R
Mostrar u ocultar el panel de mensajes Ctrl+Alt+Y
Cuadrícula de resultados de foco Ctrl+Alt+G
Cuadrícula de resultados anterior Ctrl+Flecha arriba
Cuadrícula de resultados siguiente Ctrl+Flecha abajo

Tip

Configure pgsql.copyIncludeHeaders como true para incluir los encabezados de columna cada vez que copie. Establezca pgsql.copyRemoveNewLine en false para conservar los caracteres de nueva línea en las celdas copiadas.

Guardar resultados

Para exportar los resultados de la consulta, seleccione un botón Guardar en la barra de herramientas de resultados:

Button Formato
Guardar como CSV Valores separados por comas (.csv)
Guardar como JSON Notación de objetos JavaScript (.json)
Guardar como Excel Libro de Microsoft Excel (.xlsx)

Personalice el comportamiento de exportación de CSV con esta configuración:

Configuración Description Valor predeterminado
pgsql.saveAsCsv.delimiter Carácter delimitador de columna ,
pgsql.saveAsCsv.lineSeparator Separador de línea Valor predeterminado del sistema
pgsql.saveAsCsv.textIdentifier Carácter para incluir campos de texto "
pgsql.saveAsCsv.encoding Codificación de archivos utf-8
pgsql.saveAsCsv.includeHeaders Incluir encabezados de columna true

Abrir resultados en una pestaña independiente

Para conjuntos de resultados grandes, abra los resultados en una pestaña del editor dedicado para obtener más espacio. Seleccione Abrir en nueva pestaña en la barra de herramientas de resultados o establezca pgsql.openQueryResultsInTabByDefaulttrue en en la configuración para abrir siempre los resultados en una pestaña independiente.

Pestaña Mensajes

La pestaña Mensajes muestra información de ejecución de consultas, incluidos los mensajes de estado, los recuentos de filas y el tiempo de ejecución. Cada mensaje incluye una marca de tiempo.

El panel de mensajes se abre de forma predeterminada junto con la cuadrícula de resultados. Para cambiar este comportamiento, establezca pgsql.messagesDefaultOpen en false.

Tip

Establézcalo pgsql.showBatchTime en true para mostrar el tiempo de ejecución de los lotes individuales.

Pestaña del plan de consulta

Al ejecutar una EXPLAIN consulta o EXPLAIN ANALYZE , aparece una pestaña Plan de consulta junto con Resultados y mensajes. Seleccione esta pestaña para abrir el visualizador del plan de ejecución integrado o seleccione el botón Visualizar plan de consulta en la barra de herramientas del panel Resultados de la consulta de PostgreSQL.

También puede ejecutar Visualize Query Plan (PostgreSQL) desde la paleta de comandos para visualizar el plan de la consulta actual.

Para obtener información detallada sobre el visualizador de planes de ejecución, consulte Visualizador de planes de consulta.

Vista de grafo para consultas de Apache AGE

Cuando una consulta devuelve resultados orientados a grafos de Apache AGE, la extensión detecta llamadas a la función cypher() y patrones de Apache AGE (agtype, ag_catalog) y abre el lote de resultados en una vista de grafos en lugar de la cuadrícula estándar.

  • Cambiar vistas: seleccione Cambiar a Gráfico en la barra de herramientas de resultados para cambiar de la cuadrícula a la vista de gráfico o Cambiar a tabla para volver a la cuadrícula.
  • Inspeccionar elementos: seleccione nodos o bordes en el gráfico para ver sus etiquetas y propiedades en el panel Propiedades .
  • Navegación: Utilice los botones de la barra de herramientas del gráfico: Acercar, Alejar, Ajustar al tamaño y Restablecer.
  • Exportar: seleccione Guardar como PNG en la barra de herramientas del grafo para exportar el grafo como una imagen.

Nota:

Si la consulta no devuelve datos que se puedan representar en un gráfico, la extensión conserva la vista de cuadrícula estándar.

Fragmentos de código

La extensión incluye fragmentos de código integrados de PostgreSQL que ayudan a crear patrones comunes de SQL. Escriba un prefijo de fragmento de código en el editor y presione Tab para expandir el fragmento de código. Pulse Tab para recorrer los marcadores de posición dentro del fragmento de código expandido y completar los valores.

Fragmentos de código disponibles

Prefijo Description
pgCreateTable Creación de una tabla básica con una clave principal
pgDropDatabase Eliminación de una base de datos PostgreSQL existente
pgDropTable Eliminar una tabla
pgInsertData Insertar una fila en una tabla
pgSelectAll Consulta simple SELECT *
pgUpdateRows Actualización de datos en una tabla
pgDeleteRows Eliminación de datos de una tabla
pgCreateIndex Creación de un índice en una columna especificada
pgCreateUser Creación de un nuevo rol o usuario
pgGrantPrivileges Concesión de privilegios en una tabla a un usuario
pgCTE Ejemplo de Expresión de tabla común (CTE)
pgLeftJoin LEFT JOIN ejemplo de consulta
pgExplainAnalyze EXPLAIN ANALYZE consulta para obtener detalles de rendimiento
pgListTables Enumerar todas las tablas de un esquema específico

Tip

Escriba pg en el editor y explore las sugerencias de IntelliSense para ver todos los fragmentos de código disponibles.

Historial de consultas

La vista Historial de consultas del panel Barra de actividad de PostgreSQL captura automáticamente las consultas que ejecuta, por lo que puede volver a revisarlas y reutilizarlas más adelante.

Administración del historial de consultas

Acción Cómo hacerlo
Apertura de una consulta Seleccione una entrada en la vista Historial de consultas para cargarla en un nuevo editor.
Ejecución de una consulta Haga clic con el botón derecho en una entrada y seleccione Ejecutar consulta.
Copia de una consulta Haga clic con el botón derecho en una entrada y seleccione Copiar consulta.
Eliminar una entrada Haga clic con el botón derecho en una entrada y seleccione Eliminar.
Borrar todo Seleccione el botón Borrar todo el historial de consultas en la barra de herramientas de la vista.
Buscar en la paleta de comandos Ejecute PGSQL: Open Query History in Command Palette:

Captura del historial de controles

Use la barra de herramientas de la vista Historial de consultas para iniciar o pausar la captura:

  • Iniciar captura del historial de consultas: reanude la grabación de consultas ejecutadas.
  • Pausar la captura del historial de consultas: Detiene la grabación.

Configure el comportamiento del historial con estas opciones:

Configuración Description Valor predeterminado
pgsql.enableQueryHistoryFeature Habilitación de la característica Historial de consultas true
pgsql.enableQueryHistoryCapture Captura automática de consultas ejecutadas true
pgsql.queryHistoryLimit Número máximo de entradas del historial almacenado 20