Novedades de DataGrip 2022.2

¡DataGrip 2022.2 ya está aquí! Esta es la segunda actualización principal de 2022 y viene cargada de mejoras. Echemos un vistazo más en profundidad!

Opción para importar varios archivos CSV

Hemos mejorado el proceso de importación de archivos implementando la posibilidad de seleccionar varios archivos CSV e importarlos a la vez.

Modos de resolución Playground y Script

Para resolver los objetos de la base de datos en las secuencias de comandos SQL, DataGrip necesita entender el significado de los objetos. Esto es necesario para que el IDE le proporcione una correcta finalización del código y trate los usos de los objetos como enlaces.

En general, el contexto de resolución debe coincidir con el contexto de ejecución, pero no es una tarea trivial para DataGrip. Por eso, hasta hace poco, había varios problemas relacionados con la resolución. Esto es lo que ocurre en ocasiones:

  • Todos los objetos se resolvían, pero el script no se podía ejecutar en la base de datos.
  • Cuando se activaba la opción Auto-qualify, a veces los objetos se quedaban sin calificar si se encontraban en la base de datos o el esquema predeterminados.
  • Si había varios objetos con el mismo nombre en diferentes bases de datos o esquemas, las columnas existentes no se resolvían, e incluso la acción Expand column list generaba a veces una lista incorrecta. Al mismo tiempo, también existía el riesgo de resolver columnas inexistentes.

La causa de estos problemas era que, para cada consola o archivo local, DataGrip resolvía sus objetos en el contexto seleccionado en el menú desplegable superior derecho y en la base de datos o esquema predeterminados (o en la entradal ajuste SQL Resolution scopes).

Esto estaba bien para trabajar con scripts que contenían declaraciones USE o SET SEARCH PATH, que cambian el contexto. Sin embargo, el IDE también necesita saber dónde resolver al principio del archivo. Por lo tanto, trataba la base de datos o el esquema predeterminado (o la entrada del ajuste SQL Resolution scopes) como el contexto más apropiado para el comienzo del archivo.

En otras palabras, si no hay declaraciones USE o SET SEARCH PATH en su archivo, DataGrip no debería intentar resolver el comienzo del archivo en algún lugar fuera de contexto. Para hacer frente a esta situación, hemos creado una forma de que DataGrip sepa cómo proceder introduciendo dos modos de resolución: Playground y Script.

En el modo Playground, DataGrip resuelve todos los objetos al contexto, que es el valor del selector de esquema, el ámbito de resolución o la base de datos predeterminada. Funciona mejor si su archivo es solo un conjunto de consultas inconexas, independientes entre sí y sin una secuencia determinada. El modo Playground es ahora el predeterminado para las consolas de consultas.

En el modo Script, el comienzo del archivo se resuelve en el contexto, pero cualquier declaración USE en el script cambia el contexto para la resolución porque son parte de la lógica secuencial del script. Esta es una buena opción para cuando sus consultas tienen una lógica secuencial y deben ejecutarse como un solo script. El modo Script es ahora el predeterminado para los archivos locales.

Pasar de un modo a otro es fácil. Basta con utilizar el menú desplegable de la barra de herramientas, como se ve en la captura de pantalla.

Generación de código

Nueva interfaz de usuario Modify

La nueva interfaz de usuario Modify, cuya versión básica se introdujo en la versión 2022.1, se ha convertido en la opción predeterminada. A partir de DataGrip 2022.2, todos los objetos secundarios de una tabla se pueden añadir y editar mediante esta nueva interfaz.

La antigua interfaz de usuario seguirá estando disponible durante este ciclo de lanzamiento a través del menú contextual.

Compatibilidad con cotejado y juegos de caracteres SQL Server

El cotejado y los juegos de caracteres se generan ahora con el DDL de la tabla.

Categorías en el mapa de teclas

Anteriormente, todas las acciones relacionadas con la funcionalidad de la base de datos se almacenaban en cuatro lugares diferentes en el mapa de teclas. Esta estructura, que tiene muy poca lógica, fue una consecuencia histórica del desarrollo del IDE.

Para ayudarle a ver todas las acciones disponibles, hemos reorganizado la estructura y hemos situado todas las acciones en grupos bajo el grupo principal Database.

Ámbitos en fuentes de datos DDL

Ahora puede establecer ámbitos de archivos como fuentes para fuentes de datos DDL. Esto le permitirá filtrar fácilmente las carpetas para las fuentes de datos DDL. Por ejemplo, puede excluir subcarpetas.

Miscelánea

Acción Merge All Project Windows en macOS

Para los usuarios de macOS, hemos introducido la posibilidad de fusionar todas las ventanas de proyecto abiertas en una, convirtiéndolas en pestañas. La acción está disponible desde el menú Windows.

Aviso de caducidad de contraseña Oracle, Vertica

Las bases de datos Oracle y Vertica pueden enviar avisos si la contraseña va a caducar. Ahora DataGrip recupera esta información y la muestra una vez que se ha activado Test Connection.

Compatibilidad básica con DuckDB, Mimer SQL y Apache Ignite

Hemos añadido 3 nuevas bases de datos a la lista de compatibilidad básica: DuckDB, Mimer SQL y Apache Ignite.

Editor de datos

Mejoras en la calidad

  • DBE-10971: ahora el orden de la tabla se guarda en el editor de datos.
  • DBE-7888: febrero vuelve al selector de fecha.
  • DBE-15454: las columnas binarias con tipos de contenido mixtos ahora son editables.
  • DBE-7804: la importación de CSV ya no falla en la última línea si el último valor está vacío y no hay ninguna línea nueva.
  • DBE-15335: el extractor SQL-Insert-Multirow genera la consulta correcta.
  • DBE-14980: al abrir Quick Documentation para celdas, los datos relacionados se cargan de forma automática.
  • DBE-15639: se ha corregido la ubicación incorrecta de los objetos Origin y Target en la ventana Migration de la vista previa DDL diff.
  • DBE-15694: ahora se admite la coincidencia de familia de operadores.
  • DBE-15644: El modo Fire de PostgreSQL ahora se respeta al volcar a una fuente de datos DDL.
  • DBE-8557: SET ROWCOUNT en Azure SQL Database ahora se ejecuta antes de que Azure consulte acerca de la limitación de tamaño de página.

Consola de consultas

Mejoras en la calidad

  • DBE-996: la barra de búsqueda ya no oculta la barra de herramientas.
  • DBE-11616: MODIFY ORDER BY de ClickHouse ahora es compatible con ALTER TABLE.
  • DBE-14643: SQL Server La advertencia condition is always false ya no aparece durante la asignación de variables
  • DBE-12232: ahora se admite CHANGETABLE de SQL Server.
  • DBE-13312: ahora se admite END CONVERSATION de SQL Server.
  • DBE-12435: las tablas PRAGMA_TABLE_INFO y PRAGMA_TABLE_XINFO de SQLite ahora se resuelven correctamente.
  • DBE-14997: las columnas de PostgreSQL ahora se resuelven correctamente al utilizar CTE con INSERT INTO.