¿Conoces la herramienta Quick SQL?

Quick SQL nos permite diseñar rápidamente y prototipar modelos de datos utilizando una sintaxis abreviada tipo markdown que expande el Oracle SQL. Podemos crear fácilmente relaciones maestro/detalle, comprobar restricciones e incluso generar datos de muestra.

Podemos utilizar esta aplicación en forma gratuita para generar SQL y usarlo en cualquier base de datos Oracle.

Podemos crear prototipos de forma gratuita utilizando Oracle Live SQL.

Para utilizar esta herramienta, necesitamos tener una cuenta gratuita en Oracle.com

Hacemos clic en el botón Start Coding, nos aparece la ventana para ingresar nuestras credenciales de Oracle, y si no tenemos credenciales podemos crear una nueva.

De esta manera ingresamos a la herramienta Quick SQL, (que, por cierto, está desarrollada en Oracle APEX 😊)

Por otro lado, también podemos utilizar esta herramienta si estamos suscriptos a un espacio de trabajo gratuito en apex.oracle.com, o si disponemos de un workspace por ejemplo en autonomous database en la nube de Oracle, tendremos acceso a Quick SQL dentro de APEX.

Desde la página de inicio de APEX hacemos clic en SQL Workshop –> Utilities –> Quick SQL.

Para aprender a generar los códigos podemos cargar un modelo que trae Quick SQL, por ejemplo, hacemos clic en el botón Load. 

Selecccionamos el ejemplo de datos: Departments and Employees.

Cargamos el Sample, y vemos cómo en el cuadrante de la izquierda tenemos la sintaxis para generar las sentencias SQL de lo que se visualiza en el cuadrante de la derecha.

Vemos el siguiente código:

departments /insert 4
   name /nn
   location
   country
   employees /insert 14
      name /nn vc50
      email /lower
      cost center num
      date hired
      job
view emp_v departments employees

Existen directivas de tablas como directivas de columnas. Según este ejemplo vemos las siguientes:

/insert 4 => esto significa “Genere 4 declaraciones SQL INSERT con datos aleatorios” (directiva de tabla)

/nn vc50 => esto significa “Añadir una restricción no null a la columna que precede, en este caso name, además define que es un tipo de dato varchar2(50)” (directiva de columna)

/lower => esto significa “que fuerza a la columna de que el texto se encuentre en minúscula” (directiva de columna)

num =>  esto significa “de la que la columna es un tipo de dato numérico”

Genera el siguiente Script de SQL:

-- create tables
create table departments (
    id                             number generated by default on null as identity 
                                   constraint departments_id_pk primary key,
    name                           varchar2(255 char) not null,
    location                       varchar2(4000 char),
    country                        varchar2(4000 char)
)
;

create table employees (
    id                             number generated by default on null as identity 
                                   constraint employees_id_pk primary key,
    department_id                  number
                                   constraint employees_department_id_fk
                                   references departments on delete cascade,
    name                           varchar2(50 char) not null,
    email                          varchar2(255 char),
    cost_center                    number,
    date_hired                     date,
    job                            varchar2(255 char)
)
;

-- table index
create index employees_i1 on employees (department_id);


-- triggers
create or replace trigger employees_biu
    before insert or update 
    on employees
    for each row
begin
    :new.email := lower(:new.email);
end employees_biu;
/
-- create views
create or replace view emp_v as 
select 
    departments.id                                     department_id,
    departments.name                                   department_name,
    departments.location                               location,
    departments.country                                country,
    employees.id                                       employee_id,
    employees.name                                     employee_name,
    employees.email                                    email,
    employees.cost_center                              cost_center,
    employees.date_hired                               date_hired,
    employees.job                                      job
from 
    departments,
    employees
where
    employees.department_id(+) = departments.id
/
-- load data
insert into departments (
    id,
    name,
    location,
    country
) values (
    1,
    'Internal Systems',
    'Tanquecitos',
    'United States'
);
.........
.........
.........

Y sigue aquí insertando filas en las tablas Departamento y Empleados; 4 registros en la tabla Departamentos y 14 registros en la tabla Empleados.

Para aprender más sobre la herramienta tenemos la ayuda donde nos muestra los tipos de datos, las directivas de tabla y columnas, las vistas, configuraciones y ejemplos.

Podemos guardar el script, descargarlo y ejecutarlo directamente en nuestro esquema.

Usando esta herramienta nos facilita muchísimo la escritura de código SQL, te invito a que la utilices y nos cuentes qué te parece en los comentarios. 😊

¡Hasta Pronto!

Publicado por Ing. Clarisa Maman Orfali

Clarisa es Oracle ACE Director, con más de 27 años de experiencia como desarrolladora, docente, autora y consultora en Tecnologías de la Información. Clarisa es de Argentina que vive y trabaja en Irvine, California, en los Estados Unidos. Ella es autora de los primeros tres libros de Oracle APEX. También es co-fundadora del Grupo de Usuarios de Oracle de Argentina (AROUG) y se ha especializado los últimos 13 años en el desarrollo de aplicaciones web con Oracle Application Express (APEX).

Un comentario en “¿Conoces la herramienta Quick SQL?

Deja un comentario

A %d blogueros les gusta esto: