SQL (Structured Query Language) es un lenguaje de programación estándar e
interactivo para la obtención de información desde una base de datos y para actualizarla.
Aunque SQL es a la vez un ANSI y una norma ISO, muchos productos de bases de
datos soportan SQL con extensiones propietarias al lenguaje estándar.
Las consultas toman la forma de un lenguaje de comandos que permite seleccionar,
insertar, actualizar, averiguar la ubicación de los datos, y más. También hay
una interfaz de programación.
En esta ocasión se pretende introducir y explicar los comandos mas utilizados con sus
opciones más útiles, dejando los detalles más específicos a los manuales de
referencia y libros especializados de SQL con todas sus variantes.
TERMINOLOGIA
SQL (Structured Query languaje o Lenguaje de Consultas
Estructurado) es el que permite la comunicación con un Sistema Gestor de Bases
de Datos. A continuación se mostraran algunos Sistemas que trabajan con SQL.
DMBS TIPO DE MAQUINA
DB2 Main IBM
SQL/DS Main IBM
RDB/VMS Minis Digital
ORACLE Main, Minis, Micros Oracle
INGRES Minis,
micros
SYBASE Minis y LAN
INFORMIX Minis y Micros
UNIFY Minis
SQL/SERVER Minis y LAN
DBASE
IV Micros
El SQL es un lenguaje unificado, lo utilizan todo tipo de usuarios, desde el
administrador de la base de datos, hasta el usuario final, permite la
realización de cualquier consulta de datos.
Las sentencias de SQL se clasifican como parte del DDL o del DML.
DDL
(Lenguaje de Definición de Datos): Son las sentencias SQL
que permiten definir los objetos de la Base de Datos.
DML
(Lenguaje de manipulación de datos): Son las sentencias SQL
que permiten manejar la base de datos.
Siempre que se realiza alguna operación en la base de datos, no se realiza
directamente sobre la tabla sino sobre una copia local de esta. De tal manera
que si queremos que los resultados de estas operaciones se trasladen a la base
de datos, hay que confirmar dicha operación con el comando commit.
Si
no queremos que estos resultados modifiquen la base de datos (Deshacer) se
utiliza el comando rollback, aunque hay que hacer la claridad que
algunas sentencias SQL no pueden volverse atrás.
Una transacción es un conjunto
de acciones llevadas a cabo por un usuario o un programa de aplicación, que
acceden o cambian el contenido de la base de datos. Las transacciones
representan eventos del mundo real, como registrar un inmueble para ponerlo en
alquiler, concertar una visita con un cliente a un inmueble, dar de alta un
nuevo empleado o registrar un nuevo cliente. Estas transacciones se deben
realizar sobre la base de datos para que ésta siga siendo un fiel reflejo de la
realidad.
Una transacción puede estar
compuesta por varias operaciones, como la transferencia de dinero de una cuenta
bancaria a otra. Sin embargo, desde el punto de vista del usuario, estas
operaciones conforman una sola tarea. Desde el punto de vista del SGBD, una
transacción lleva a la base de datos de un estado consistente a otro estado
consistente.
El SGBD garantiza la
consistencia de la base de datos incluso si se produce algún fallo, y también
garantiza que una vez se ha finalizado una transacción, los cambios realizados
por ésta quedan permanentemente en la base de datos, no se pueden perder ni
deshacer (a menos que se realice otra transacción que compense el efecto de la
primera).
Si la transacción no se puede
finalizar por cualquier motivo, el SGBD garantiza que los cambios realizados por
esta transacción son deshechos. En el ejemplo de la transferencia de fondos
entre dos cuentas bancarias, si el dinero se extrae de una cuenta y la
transacción falla antes de que el dinero se ingrese en la otra cuenta, el SGBD
deshará la extracción de fondos.
El objetivo del diseño de las
transacciones es definir y documentar las características de alto nivel de las
transacciones que requiere el sistema. Esta tarea se debe llevar a cabo al
principio del proceso de diseño para garantizar que el esquema lógico es capaz
de soportar todas las transacciones necesarias. Las características que se deben
recoger de cada transacción son las siguientes:
-
Datos que utiliza la
transacción.
-
Características funcionales
de la transacción.
-
Salida de la transacción.
-
Importancia para los
usuarios.
-
Frecuencia de utilización.
Hay tres
tipos de transacciones:
-
En las transacciones de
recuperación se accede a los datos para visualizarlos en la pantalla a
modo de informe.
-
En las transacciones de
actualización se insertan, borran o actualizan datos de la base de
datos.
-
En las transacciones
mixtas se mezclan operaciones de recuperación de datos y de
actualización.
El diseño de
las transacciones utiliza la información dada en las especificaciones de
requisitos de usuario.
|