- 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
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.rbde 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 pgstrapA 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
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
Un área donde JetBrains sí tiene una ventaja clara sobre VSCode es en ofrecer herramientas de DB integradas y pulidas
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
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)
¿Es como si Microsoft Access y PostgreSQL se reencontraran después de unos 30 años?
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