Novedades de DataGrip 2022.3

¡DataGrip 2022.3 ya está aquí! Esta actualización principal está repleta de diversas mejoras. Echemos un vistazo más en profundidad!

General

Compatibilidad con Redis

Hemos implementado la esperada compatibilidad con Redis. Ahora puede conectarse a Redis Single Instance, explorar los valores clave en Data Viewer, escribir y ejecutar consultas de Redis con la ayuda de nuestra asistencia a la codificación inteligente, y mucho más.

Este es un rápido resumen de lo que incluye:

  • Conectividad: Redis Single Instance.
  • Introspección: Introspección de bases de datos y claves, incluida la posibilidad de establecer un filtro de claves predeterminado para el introspector.
  • Explorador de bases de datos: Carpetas separadas para claves de diferentes tipos para Redis v6.0+, y una carpeta con todas las claves para versiones anteriores.
  • Ejecución de consultas: El controlador JDBC admite la ejecución de la mayoría de las consultas.
  • Asistencia a la codificación: Resaltado de código, completado de palabras clave y resolución de bases de datos y claves.
  • Editor de objetos: Cambio de nombre y eliminación de claves.
  • Visor de datos: Filtrado y resaltado de JSON.

Para obtener más detalles, lea nuestro artículo del blog.

Nueva interfaz de usuario disponible a través de los ajustes

Este mes de mayo, anunciamos un programa de vista previa cerrado para la nueva interfaz de usuario de los IDE basados en IntelliJ. ¡DataGrip no es una excepción!

Con este primer paso, pretendíamos presentar el nuevo aspecto de nuestros productos a un número limitado de usuarios. El programa de vista previa nos ha ayudado a acumular y procesar un sinfín de comentarios interesantes, y ahora estamos preparados para invitar a todo el mundo a probar la nueva interfaz de usuario.

Puede cambiar a la nueva interfaz de usuario en Settings / Preferences | Appearance & Behavior | New UI Preview, probarla y compartir sus opiniones con nosotros.

Todavía estamos en proceso de hacer que la nueva interfaz de usuario sea más útil para DataGrip. Por ejemplo, la creación de una configuración de ejecución, que es crucial para otros IDE, puede no ser una acción prioritaria para utilizar un botón azul brillante. Si tiene alguna idea para personalizar la barra de herramientas superior, compártala con nosotros.

Nueva solución Settings Sync

En esta versión, hemos introducido una solución renovada para sincronizar los ajustes del IDE. Se implementa a través de un complemento que se incluye de forma predeterminada. La nueva opción Settings Sync aparecerá en los ajustes:

Antes teníamos dos complementos independientes para la sincronización de ajustes: IDE Settings Sync y Settings Repository.

Si ha estado utilizando IDE Settings Sync, sus datos se migrarán automáticamente al nuevo complemento, por lo que no tendrá que realizar ninguna acción.

Si es usted usuario de Settings Repository, le aconsejamos que siga utilizando su configuración actual, ya que la migración todavía está en proceso. Recibirá una notificación en el IDE cuando la funcionalidad esté lista.

La configuración se almacena en la nube asociada a su cuenta JetBrains. Si utiliza diferentes IDE basados en IntelliJ con la misma cuenta de JetBrains, su configuración se sincronizará automáticamente.

Problema conocido: La sección Database de Settings no puede sincronizarse actualmente. Esta funcionalidad estará disponible pronto en una de las actualizaciones menores a la versión 2022.3.

Tenga en cuenta que las fuentes de datos no forman parte de la configuración. Si desea compartir las fuentes de datos, siga este tutorial.

Vistas virtuales

Este nuevo concepto también es virtual y permite utilizar las vistas sin necesidad de crearlas en la base de datos. Básicamente, se trata de una consulta que recupera el resultado y se almacena en DataGrip.

 

Las vistas virtuales son visibles en el explorador de bases de datos y pueden ejecutarse con un doble clic.

Tenga en cuenta que actualmente no es posible utilizar vistas virtuales en su código SQL.

Navegación en diagramas

Los elementos del diagrama son ahora totalmente navegables. Allí puede realizar todas las acciones principales de navegación:

  • Abrir DDL: Ctrl/Cmd+B
  • Abrir datos: F4
  • Seleccionar en el explorador de bases de datos: Alt/Opc+Mayús+B
  • Modificar: Cmd/Ctrl+F6

Explorador de bases de datos

Filtro rápido

Por fin está disponible otra funcionalidad muy esperada. Ahora, al utilizar la búsqueda rápida, también tiene la posibilidad de filtrar los objetos. Todos los objetos que no coincidan se ocultarán.

Filtrado de esquemas basado en patrones

Si tiene muchos esquemas diferentes, agradecerá esta mejora. Ya es posible elegir bases de datos o esquemas para la introspección basándose en patrones de expresiones regulares. Para ello, haga clic en Add Pattern y defina un patrón de expresión regular en el nuevo nodo. Las bases de datos/esquemas se elegirán según ese patrón.

La adición de varios patrones combinará las multiplicidades y no creará una intersección de ellas.

El nodo All se comporta ahora de forma diferente a las versiones anteriores: no selecciona el esquema predeterminado de forma automática. Ahora debe elegir entre All schemas, Default schema o aplicar un filtro regexp.

Colores para fuentes de datos globales

Ahora, cuando se establece el color para la fuente de datos global, se comparte junto con su fuente de datos.

Arrastrar y soltar para los archivos de script

Para ejecutar el script frente a cualquier esquema, ahora solo tiene que arrastrar y soltar su archivo de script desde la ventana de herramientas Files.

Editor de datos

Formatos para los tipos de datos de fecha y hora

Ahora es posible personalizar cómo se mostrarán los campos de tipo fecha y hora en el editor de datos. Los ajustes se encuentran en Database | Data Editor and Viewer.

 

Está función está disponible para tres tipos de campos:
Datetime/timestamp (con o sin zona horaria), Time (con o sin zona horaria) y Date.

Nuevo extractor: cláusula WHERE

Ahora se puede extraer un rango de valores seleccionado como parte de la cláusula WHERE:

  • Los valores dentro de una columna se combinan con el operador OR.
  • Los valores de una fila se combinan con el operador AND.
  • Si se extraen valores de una sola columna, se combinan en un operador IN.

Filtrado SQL por valores múltiples

La acción Filter by ahora genera una condición si se seleccionan varios valores.

Campo de búsqueda de texto: rellenar con la selección

Si pulsa Ctrl/Cmd+F para la búsqueda de texto, los campos de búsqueda se rellenarán automáticamente con el valor que haya bajo el cursor. Esto es similar a la conocida lógica del editor de texto.

Los valores struct se muestran correctamente Big Query

Los valores struct se muestran ahora de forma legible: cada valor anidado se muestra como una columna independiente.

Trabajar con código

Vista previa de acciones de intención

Ahora puede ver instantáneamente cómo se modificará su consulta una vez que aplique las sugerencias del IDE. La vista previa aparece cuando abre la lista de acciones de intención disponibles y pasa el ratón por encima de una opción.
Puede desactivar la función de vista previa pulsando F1/Ctrl+Q mientras la lista de acciones de intención está abierta.

Copiar y pegar una sola línea

Si no hay selección, al pulsar Ctrl/Cmd+C se selecciona automáticamente y se copia toda la línea en el editor de texto. Antes funcionaba así, pero ahora hemos completado esta acción facilitando también el pegado de la línea. Esta línea copiada se pegará como una nueva línea con un retorno de carro si no hay selección, como se muestra en este vídeo:

Nuevo diseño para el generador de esquemas SQL: Per Object By Schema and Type

El nuevo diseño se llama Per Object By Schema and Type. Si se utiliza para generar SQL para todo el esquema, los archivos resultantes se colocarán en carpetas según el tipo de objeto: tablas, vistas, etc.

Arreglos

  • DBE-6156: Oracle SET ROW ya es compatible.
  • DBE-12766: SQL Server $PARTITION ya es compatible.

Trabajar con tablas

Interfaz de usuario para claves externas virtuales

La posibilidad de crear claves externas virtuales se introdujo hace un tiempo. Se utilizan principalmente para:

  • Finalización de código de cláusula JOIN.
  • Mostrar las relaciones virtuales en los diagramas.
  • Navegación por relaciones de datos en el editor de datos.

La principal forma de crearlas era utilizando la acción de intención Store Relation en la cláusula JOIN de su consulta. Esto era un poco difícil de encontrar, y toda la funcionalidad carecía de una forma intuitiva de utilizarla. Esto es lo que hemos modificado.

Las claves virtuales externas son ahora visibles en el explorador de bases de datos:

Puede crearlas y soltarlas aquí, en el explorador de bases de datos y en el cuadro de diálogo Modify Table.

Tamaño de la tabla en la documentación rápida MySQL PostgreSQL

El tamaño de la tabla se muestra ahora en la ventana emergente de documentación rápida para MySQL y PostgreSQL. Para verlo, haga clic en Show table preview.

Conectividad

Script de arranque para las plantillas de sesión

Ahora es posible establecer el script de arranque para las plantillas de sesión. Esto significa que el script se ejecutará cada vez que se cree una nueva sesión basada en la plantilla correspondiente. Por ejemplo, permite a DataGrip ejecutar la declaración Use secondary roles all para la introspección en Snowflake.

Opciones de autenticación MongoDB

Hemos añadido muchos mecanismos de autenticación al cuadro de diálogo de conexión para MongoDB. Para utilizarlos, actualice su controlador a la versión 1.16.

Visor diff de esquemas

Compatibilidad con las dependencias de objetos

El visor diff de esquemas ahora tiene en cuenta los objetos dependientes. El más importante de estos objetos son las columnas de identidad de PostgreSQL. Si las secuencias relacionadas son diferentes para dos columnas de identidad que, por lo demás, son idénticas, esta diferencia se mostrará cuando se comparen estas dos columnas.

 

Otro ejemplo sería un desencadenante que llame a un procedimiento desde otro esquema. Ahora se mostrará la diferencia entre dichos desencadenantes si los nombres de las rutinas son diferentes:

Todavía existen dos grandes limitaciones conocidas que queremos destacar sobre el visor diff de esquemas:

  • DBE-16814: Si una rutina/vista hace referencia a algún objeto desde su cuerpo, no se garantiza el orden correcto del script. Por ejemplo, si una rutina llama a otra, no se garantiza que esta última se cree antes que la primera.
  • DBE-15598: En algunos casos, la calificación de los objetos no es correcta dentro de los cuerpos de los objetos fuente, expresiones predeterminadas, etc.