Trabajar con datos
Editor SQL
Escribe y ejecuta consultas con autocompletado y formato, maneja transacciones, guarda tus consultas y entiende su plan de ejecución.
Abrir un editor
Elige una conexión, base o esquema en el árbol y pulsa «Nueva consulta» o Ctrl+T. La consulta se ejecuta en la base y el esquema elegidos arriba del editor; puedes cambiarlos ahí.
Ejecutar
| Atajo | Qué ejecuta |
|---|---|
| Ctrl+R | La selección o, si no hay, la sentencia donde está el cursor |
| Ctrl+Mayús+R | Todo el editor |
| Ctrl+Enter | La selección o, si no hay, todo |
| Ctrl+Mayús+Enter | La sentencia donde está el cursor |
Cada sentencia que devuelve filas abre su propio resultado en el panel inferior; los mensajes y filas afectadas van a «Mensajes». «Detener» corta la ejecución: las sentencias restantes no se ejecutan.
Un resultado muestra las primeras filas. Para recorrer una tabla completa, ábrela desde el árbol con Enter o doble clic: la grilla carga más filas a medida que bajas.
Cuando el resultado viene de una sola tabla con clave primaria, se puede editar ahí mismo. Los cambios se guardan en la tabla, fuera de la sesión del editor.
Sentencias que borran
Antes de ejecutar DROP, TRUNCATE, DELETE o UPDATE sin WHERE, o algo que reemplaza un objeto existente, Qrulla te muestra qué hará y en qué conexión, y te pide confirmar. En MongoDB y Redis avisa de lo equivalente (borrar una colección, FLUSHDB…).
Con el plan Max, en conexiones de producción te muestra además cuántas filas cambiarán antes de ejecutar, y cualquier UPDATE o DELETE del editor se puede deshacer después.
Transacciones
Si ejecutas BEGIN (o el equivalente de tu motor), el editor muestra «Transacción abierta» hasta que la termines con COMMIT o ROLLBACK. Si cierras la pestaña, cambias de base o te desconectas con una transacción abierta, Qrulla te avisa: sus cambios se revierten.
En «Aislamiento» eliges el nivel de esta pestaña (Read Committed, Repeatable Read, Serializable…); se aplica desde la próxima ejecución.
Escribir más rápido
- Autocompletado de tablas, columnas y palabras clave mientras escribes. Si creaste objetos nuevos, pulsa «Actualizar nombres para el autocompletado».
- Formatear: Ctrl+Mayús+F ordena el SQL, o solo la selección. Si el SQL parece incompleto (comillas o paréntesis sin cerrar), no lo toca para no cambiar su significado.
- Diseñar consulta: arma un
SELECTarrastrando tablas y marcando columnas. Ver Diseñar.
Guardar consultas
Ctrl+S guarda la consulta con un nombre en la carpeta «Consultas» de su base, en el árbol. Desde ahí la abres, la renombras o la eliminas. Se guarda en tu equipo; no cambia nada en el servidor.
Historial
El botón «Historial» abre en el panel derecho las consultas que ejecutaste con esa conexión, con buscador. «Usar en el editor» la trae de vuelta. El historial se guarda solo en tu equipo. El plan Developer muestra las últimas 10; Advanced y Max, todo.
Plan de ejecución
«Plan» (Ctrl+Mayús+E) muestra cómo el servidor ejecutaría la sentencia actual o la selección, sin ejecutarla: cada paso con su costo y filas estimadas, el más costoso resaltado y las lecturas completas de tablas marcadas.
Con el plan Max, «En palabras simples» lo explica en frases, por ejemplo: «Lee la tabla pedidos completa para quedarse con las filas que cumplen el filtro. Un índice en cliente_id evitaría leerla entera».
Ver el resultado como gráfico
En un resultado, «Gráfico» lo dibuja como barras, líneas, área, anillo o dispersión. Eliges las categorías, una o más series y su resumen (suma, cuenta, promedio…). «Agregar a un informe…» lo guarda en un informe.
MongoDB y Redis
- MongoDB: escribe comandos como en su shell, uno por línea o separados por
;, por ejemplodb.clientes.find({edad: {$gt: 30}}).sort({nombre: 1}). - Redis: un comando por línea, por ejemplo
HGETALL cliente:1.
Consulta entre conexiones
Plan Max. Une tablas de conexiones distintas en una sola consulta, incluso de motores distintos. Copia tablas en el árbol (Ctrl+C) de una o varias conexiones y abre «Archivo → Nueva consulta entre conexiones». Las tablas se copian a una base temporal en tu equipo, que se borra al cerrar la pestaña, y se consultan como conexión.tabla en SQL de SQLite:
SELECT c.nombre, sum(p.total)
FROM ventas.clientes c
JOIN tienda.pedidos p ON p.cliente = c.id
GROUP BY c.nombre
¿Falta algo o no se entiende? Escribe a support@qrulla.com.