3 puntos por GN⁺ 2025-05-24 | 1 comentarios | Compartir por WhatsApp
  • La extensión simplifica la escritura de consultas y la administración de bases de datos con IntelliSense impulsado por IA y el agente de GitHub Copilot “@pgsql”
  • Ofrece soporte para seguridad integrada y gestión de despliegues en la nube con autenticación de Entra ID e integración con Azure Database for PostgreSQL
  • Se enfoca en mejorar la productividad y la eficiencia de los desarrolladores con visualización de esquemas, historial de consultas e IntelliSense contextual
  • Minimiza la fricción de incorporación y el costo de cambiar de tarea con múltiples conexiones a bases de datos, autenticación sin contraseña y una UI intuitiva

Introducción

  • Microsoft anunció la vista previa pública de una nueva extensión de PostgreSQL para Visual Studio Code (en adelante, VS Code)
  • Esta extensión está diseñada para facilitar la administración de bases de datos PostgreSQL y los flujos de trabajo de desarrollo en un solo entorno
  • Los desarrolladores pueden administrar objetos de base de datos, redactar consultas y recibir ayuda de IntelliSense contextual y del agente de GitHub Copilot “@pgsql” sin salir de VS Code.

Problemas que enfrentan los desarrolladores y solución propuesta

  • Según la encuesta de desarrolladores de StackOverflow 2024, el 41% de los desarrolladores tiene dificultades con el cambio de contexto entre tareas
  • El 2024 Stripe Developer Coefficient Report muestra que hasta el 50% del tiempo de desarrollo se dedica a depuración y resolución de problemas
  • La falta de una herramienta de extensión que integre la administración de bases de datos y el desarrollo de aplicaciones contribuye a la ineficiencia
  • La nueva extensión integra herramientas para bases de datos Postgres y @pgsql de GitHub Copilot para manejar desarrollo, administración y depuración en un solo entorno
  • También ofrece soporte para seguridad y administración centralizada con autenticación de Entra ID e integración estrecha con Azure Database for PostgreSQL

Funciones principales

Visualización de esquemas

  • Al hacer clic derecho sobre un elemento de la base de datos en el explorador de objetos (Object Explorer), se puede visualizar el esquema mediante la opción 'Visualize Schema'

GitHub Copilot con reconocimiento de base de datos

  • Proporciona asistencia de IA dentro de VS Code con reconocimiento del contexto de PostgreSQL
  • Simplifica las consultas a la base de datos, la optimización de esquemas y la ejecución de SQL mediante lenguaje natural
  • Ofrece análisis y optimización de consultas con IA con el comando “@pgsql” y menús contextuales como “Rewrite Query”, “Explain Query” y “Analyze Query Performance”
  • Brinda guía en tiempo real a nivel experto durante el desarrollo, además de funciones de seguridad y mejora de rendimiento

Modo de agente de chat de Copilot

  • El agente de chat inteligente basado en conversación (@pgsql) va más allá de preguntas y respuestas y también admite tareas de varios pasos
  • Comprende el contexto real del workspace y, con autorización, también puede escribir código y depurarlo
  • Permite indicar en lenguaje natural tareas complejas como crear bases de datos o habilitar extensiones
  • Las tareas que modifican la base de datos requieren autorización explícita del usuario

Conexión y administración de bases de datos

  • Permite conectarse fácilmente a instancias locales y en la nube de PostgreSQL
  • Simplifica el uso de múltiples perfiles de conexión, el análisis de cadenas de conexión y la configuración de la información de conexión
  • Permite explorar y filtrar directamente despliegues de Azure Database for PostgreSQL
  • Refuerza la seguridad y la gestión de acceso centrada en administradores con integración de Entra ID

Autenticación sin contraseña y seguridad

  • Ofrece autenticación sin contraseña con Entra ID
    • No requiere inicio de sesión manual y admite renovación automática de tokens
    • Minimiza los tiempos de espera de autenticación y garantiza continuidad durante el desarrollo
    • Compatible con estándares de seguridad empresariales
    • Permite usar credenciales existentes de Entra ID
    • No requiere administración de cuentas por separado

Explorador de bases de datos e historial de consultas

  • Permite verificar y administrar de forma estructurada objetos de base de datos como esquemas, tablas y funciones
  • Admite la creación, modificación y eliminación de objetos
  • El historial de consultas facilita reutilizar consultas ejecutadas anteriormente

Edición de consultas e IntelliSense contextual

  • Ofrece autocompletado de palabras clave SQL, nombres de tablas y nombres de funciones, además de resaltado de sintaxis
  • Proporciona autoformato de consultas, gestión de historial y un entorno de edición fácil de leer

Diferenciadores y fortalezas

  • Mayor productividad: reduce el tiempo de trabajo y los errores con IntelliSense contextual, formateo SQL y más
  • Asistencia inteligente con IA: soporte multietapa del agente de chat de Copilot con reconocimiento de base de datos y workspace
  • Onboarding rápido: gracias al administrador de conexiones, incluso principiantes pueden configurar el entorno en minutos
  • Seguridad: control de acceso centralizado mediante Entra ID y exploración sencilla de despliegues en Azure
  • Conjunto de herramientas integrado: permite administrar objetos de base de datos, ejecutar consultas e incluso desplegar instancias dentro de VS Code
  • Orientación a la nube: la integración profunda con Azure Database for PostgreSQL simplifica la operación de bases de datos en la nube

Cómo empezar

  • Busca 'PostgreSQL' en el Extensions Marketplace de VS Code e instala la extensión Preview PostgreSQL (icono del elefante azul)
  • Se requieren las extensiones GitHub Copilot y Copilot Chat, y es posible interactuar con Copilot mediante el comando "@pgsql"

Comentarios y planes a futuro

  • Se pueden enviar opiniones e incidencias mediante la herramienta de retroalimentación dentro de VS Code
  • La licencia estándar de vista previa se actualizará en el futuro
  • Para más información y la guía de inicio, consulta https://aka.ms/pg-vscode-docs

1 comentarios

 
GN⁺ 2025-05-24
Comentarios de Hacker News
  • Felicidades al equipo por el lanzamiento. La semana pasada fui quien hizo la primera demo en vivo de esto en una sesión patrocinada por Microsoft. Pueden ver el video de la demo aquí. También hubo una sesión aparte en el stand de MSFT, pero la grabación aún no se ha subido. Mientras tanto, aquí está el repo donde pueden probar por su cuenta todas las funciones que mostré en la demo: aquí. Si encuentran algún problema, avísenle al equipo aquí

  • Esta herramienta también resuelve un problema importante que yo antes solucionaba con un paquete de npm que hice, llamado “pgstrap”. Genera la estructura de la base de datos en forma de directorios, para que mi esquema de base de datos pueda ser aprovechado por un LLM (modelo de lenguaje grande), y además permite ver claramente los cambios en tablas durante el code review. Crea un archivo SQL por cada tabla de mi DB y los organiza en directorios por esquema. Es una idea parecida a schema.rb de Rails. Me hace pensar si es mejor que el editor entienda la base de datos, o si es mejor hacer commit del contexto dentro del codebase. Si se genera menos código o artefactos, el codebase queda más limpio. Pero no todo el mundo usa VS Code, ni todos sabrán aprovechar esta integración. Las GUI para explorar bases de datos nunca han tenido un ganador claro en el mercado. Aun así, por la cuota de mercado aplastante de VS Code, podría convertirse en el estándar para consultar DBs dentro del entorno de desarrollo. enlace de pgstrap

    • ¿No es ya un estándar total en los frameworks web incluir en control de versiones el estado actual del esquema de la base de datos junto con todas las migraciones?
    • Se ve como una herramienta práctica, gracias por compartirla. Me da curiosidad si además de tablas/columnas/índices también exporta triggers, stored procedures y cosas así. Muchas herramientas se quedan solo en la definición de tablas. Ojalá hubiera más herramientas que aprovecharan más capacidades de la DB
    • Yo uso un servidor MCP (y copilot/cline) con un solo login de solo lectura para mi DB
  • A primera vista esta herramienta se ve muy buena. Me sorprende que Microsoft le esté dedicando tanto esfuerzo a una herramienta para Postgres en vez de SQL Server. Supongo que eso habla de la gran demanda que hay por Postgres

    • Ya existe una extensión de Microsoft SQL Server para VS Code, y esto en realidad parece casi un clon de esa. La probé y se siente prácticamente igual en menús, diálogos y en general. Antes Azure Data Studio (ya descontinuado) era la base de esa extensión. enlace de la extensión de SQL Server
    • Desde la perspectiva de un developer evangelist de Microsoft, puedo decir que tanto el equipo de la extensión de SQL Server como el de PostgreSQL están invirtiendo un esfuerzo enorme. Participé en pruebas de usabilidad y bug bashes de ambos equipos, y confirmé que realmente les apasiona crear herramientas amigables para desarrolladores. Si necesitan algo, por favor denle feedback al equipo. Para noticias de SQL Server sigan a Carlos Robles y para PostgreSQL a Joshua Johnson
    • Yo creo que es porque las herramientas de MSSQL se han mantenido de forma continua a través de ADS y además han tenido buena calidad. Azure Data Studio ahora está siendo retirado, y la extensión de Postgres para VS Code no había tenido commits significativos en los últimos 6 años. Hasta ahora yo seguía usando ADS porque no había una alternativa para Postgres. enlace de referencia
    • Pensé que SQL Server Management Studio (SSMS) ya cumplía un rol parecido. Supongo que quizá el plan a largo plazo es mover SSMS a VS Code. Por eso tal vez estén experimentando primero con soporte para Postgres. enlace de SSMS
    • Ojalá hubiera una extensión parecida para SQLite
  • Definitivamente voy a probar esta extensión. Empecé mi carrera con SQL Server y SSMS siempre me ha quedado perfecto. Llevo casi 10 años usando Postgres, pero nunca he quedado satisfecho con herramientas de administración o consulta como pgadmin, dbeaver o datagrip. El DBMS de Postgres es excelente, y SQL Server también me parece de lo mejor si ignoras el costo. Lo misterioso es que la comunidad ha sido demasiado silenciosa respecto a lo malas que son las herramientas alrededor de Postgres

    • Personalmente, de todas las herramientas de base de datos genéricas que he usado, Datagrip me ha parecido por mucho la más impresionante. He probado muchas, pero la mayoría se sienten hechas por expertos en DB y muy pocas por expertos en IDE. En funciones, extensibilidad, velocidad de mejora y todo lo demás, me deja muy satisfecho. Siento que está en otra liga frente a las opciones open source como pgadmin o dbeaver. En trabajo con Oracle, Datagrip me ha salvado la salud mental
    • Diagnóstico: casi todos los desarrolladores SQL en realidad no se preocupan mucho por el tooling. Normalmente quienes diseñan la base de datos o las tablas son otros, y el desarrollador promedio se fija más en tablas o vistas que en la DB como tal, y casi nunca en índices. A la gente que sí le importa el tooling la llaman “development DBA”, pero son muy pocos, por eso cuesta mucho contratarlos y cambian de trabajo con frecuencia
  • Un área donde JetBrains sí tiene una ventaja clara sobre VSCode es en ofrecer herramientas de DB integradas y pulidas

    • Una vez al año intento volver a VSCode, pero las potentes integraciones de git y DB de JetBrains siempre me lo impiden
    • También se puede usar Datagrip por separado; yo elegí justamente ese enfoque
  • Postico siempre ha sido mi herramienta estándar para interactuar con Postgres. Me pregunto si alguien que use Postico ya probó esta nueva extensión

    • Postico está más enfocado en Mac, y el editor de DB integrado de IntelliJ me parece mucho más completo en funciones
    • Llevo más de 10 años usando Postico, así que también voy a probar esta extensión. Espero que con node-pg, Copilot pueda entender el esquema
  • Me pregunto cuál es hoy el IDE más “valioso” de Microsoft. Hace unos años VSCode se promocionaba como un “Visual Studio para principiantes”, pero últimamente VSCode se volvió el “IDE” más usado. Visual Studio se ve más como algo “legacy” (aunque sigue siendo bueno para C++ y .NET)

    • En alcance entre desarrolladores, definitivamente es VSCode. Incluso sin mucho interés en el ecosistema de MS, muchos desarrolladores de .Net se están yendo a Rider, y Visual Studio parece quedarse en entornos donde cuesta cambiar, como pasó con Eclipse o Netbeans. Yo uso emacs, pero cuando necesito SQL Server fuera de Windows no me queda otra que abrir VSCode
    • En rentabilidad, Visual Studio seguramente sigue muy por encima. Muchos flujos enterprise y plugins probablemente nunca se van a portar a VSCode. Pero como canal de entrada al ecosistema de MS, como mindshare y como plataforma extensible hacia un IDE web, VSCode lleva ventaja. Tiene muchas fortalezas, aunque da pena la limitación de estar sobre un shell de Electron
    • Abrumadoramente VSCode. Es gratis, pero sirve como puerta de entrada al ecosistema de MS y ayuda a que Microsoft siga presente en el mercado de desarrolladores
    • En la industria de videojuegos, Visual Studio sigue siendo muy usado y en algunos targets es obligatorio. Rider se usa cada vez más, pero VS todavía se usa como parte del build system
    • Nunca se promocionó a VSCode como un camino para pasar a Visual Studio y convertirse en un “desarrollador de verdad”. Python/HTML/JavaScript ni siquiera funcionaban bien en VS, así que en la práctica nunca existió esa ruta de migración
  • ¿Es como si Microsoft Access y PostgreSQL se reencontraran después de unos 30 años?

    • Si me perdí algo de la parte de Access, avísenme. Si existe una alternativa mejor que DBeaver, agradecería recomendaciones honestas
  • Me pregunto si hay algo así también para SQLite. ¿De verdad hace falta una extensión completamente nueva por cada DB, o hay partes que podrían compartirse?

  • VSCode se ve bastante bien, pero me gustaría que hubiera una forma más fácil de repartir el propio VSCode entre varios monitores. Ahora mismo uso un monitor para el código y en otro dejo la herramienta de DB en DataGrip

    • VSCode ya soporta múltiples monitores; aquí está la documentación oficial
    • Ya se pueden separar pestañas en ventanas distintas y ponerlas en varios monitores dentro de VSCode. También funciona con la terminal. La UI no es muy intuitiva, pero una vez que te acostumbras queda muy bien. Incluso puedes dejar código y terminal lado a lado (aunque esto emacs ya lo hacía desde hace mucho)
    • Justo ayer me enteré de que se pueden separar pestañas a una ventana nueva. No es una experiencia multimonitor completamente natural, pero al menos sí permite usar dos monitores
    • También está la solución por hardware: resolverlo con un solo monitor ultrawide de 38 pulgadas