PDF de programación - SQL

<<>>
Imágen de pdf SQL

SQLgráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 22 de Enero del 2018)
1.199 visualizaciones desde el 22 de Enero del 2018
276,9 KB
38 paginas
S Q L

Óscar Javier Segura Amorós
[email protected]

Cedida su publicación a el Rinconcito de Delphi

No está autorizada su reproducción sin permiso expreso de su autor

SQL. El lenguaje universal de las Bases de
Datos.

Óscar Javier Segura Amorós - [email protected]

Vamos a conocer SQL, un lenguaje de definición y
manipulación utilizado por todas las grandes Bases
de Datos.

SQL (Standard Query Language, Lenguaje de consultas estándar o estructurado), es un lenguaje que nos
permitirá operar con nuestras bases de datos de una forma sencilla y potente. Se encuentra muy difundido y
es soportado por todos los grandes sistemas gestores de bases de datos como pueden ser: Oracle, Interbase,
Microsoft, Informix, Sybase, etc. La gran ventaja que nos ofrece SQL frente a otras formas de trabajar es su
estandarización, no es necesario que cuando nos encontramos ante diferentes sistemas gestores tengamos
que aprender como funciona cada uno de ellos de una forma más o menos detallada, simplemente debemos
conocer como se trabaja con SQL, ya que su sintaxis y estructuración sufre muy pocas variaciones de un
sistema otro. Por lo tanto SQL nos ofrece una única forma de trabajar con independencia del sistema con el
que tengamos que hacerlo, con el consiguiente ahorro de tiempo y energías por parte de programador.

Para comenzar a entender las grandes virtudes que tiene SQL y las interesantes facilidades y
posibilidades que nos brinda, vamos a imaginar la siguiente situación. Imaginemos que hemos diseñado una
base de datos para un grupo de clientes. El diseño de ésta, lógicamente, debe de ser independiente del
sistema gestor en el que vaya a funcionar, pero qué ocurre cuando llegamos al cliente con el diseño hecho y
tenemos que montarlo. Si tenemos la suerte de conocer el sistema gestor que el cliente utiliza, no tenemos
ningún problema, pero qué pasa cuando no lo conocemos, perdemos mucho tiempo. Además, si la misma
base de datos la vamos a montar para diferentes clientes, lo normal es que nos encontremos con diferentes
gestores. Pues este inconveniente, que en principio para el programador puede ser un problema, SQL nos lo
resuelve. Si conocemos SQL, podremos llegar al cliente con los scrips de SQL en los que tenemos ya escritos
todas las sentencias necesarias para: crear la base de datos, crear todas las tablas y relaciones, todos los tipos
de datos de las tablas, todas las reglas de validación y las consultas para informes, solamente nos restará
ejecutar esos scrips en el servidor y trabajo finalizado. ¿Qué hemos conseguido? Hemos conseguido rapidez,
eficiencia, que el cliente quede satisfecho y nos hemos ahorrado interminables momentos de problemas
porque el sistema gestor que utiliza el cliente no terminamos de conocerlo muy bien. Qué maravilloso,
¿verdad?. Bienvenidos a SQL.

Un poco de historia. SQL comenzó a ver la luz sobre el final de la década de los 70, implementado como
un prototipo por IBM y en 1979 aparece el primer sistema gestor de bases de datos que lo soporta, Oracle.
Poco tiempo después, otros sistemas como DB2, Interbase, etc, también quisieron adoptar al nuevo recién
nacido. Ya en 1987, 1992, 1995, 1996 se le confirió la estandarización a través de las normas ISO, hasta la
actualidad, en la que todo sistema SQL se basa en el estándar SQL-3 (ISO-99) en el que se le han añadido
nuevas características como la creación de TADs (tipos abstractos de datos), reglas activas (triggers -
disparadores), cursores sensitivos, operador de unión recursiva, etc.

Aunque todo el SQL está estandarizado, sí es cierto que encontramos pequeñas diferencias en la sintaxis
de las sentencias en los diferentes sistemas gestores. Estas diferencias repito que son mínimas y una vez
realizados los scrips de SQL que, por ejemplo, diseñan una base de datos, tendremos que hacer muy pocas
variaciones si queremos que esos scrips se ejecuten en diferentes sistemas gestores Emplazo al lector para
siguientes artículos en los que abordaré las diferencias más notables entre los principales sistemas gestores de
bases de datos SQL, en los que trataré de orientarlo sobre la variaciones sintácticas con las que nos vamos a
encontrar. Insisto de nuevo en que esas diferencias son mínimas, tan mínimas que no llegan a ser un
inconveniente para la utilización de SQL.

Funcionamiento de las bases de datos SQL

Siempre que realicemos un aplicación que vaya a trabajar sobre una base de datos, ésta la situaremos
dentro de un servidor de base de datos. El servidor puede ser una máquina dedicada, cuya única función sea
la de atender peticiones de sus clientes, devolviéndoles la información y ejecutando los procedimientos
ordenados por estos sobre la base de datos. O también el servidor puede ser la misma máquina sobre la que
corra la propia aplicación. Dependerá ya de la estructura e importancia del sistema informático sobre el que
vaya a funcionar nuestra aplicación. Sea cual sea la fórmula que vayamos a utilizar, la forma de trabajar será
la misma, la única diferencia será si trabajamos con un solo ordenador, que hará simultáneamente las
funciones de servidor y cliente, o con una red de ordenadores en la que los clientes y el servidor, en principio,
quedan definidos de una forma más clara.

Una vez que conocemos como se estructura una base de datos SQL vamos a ver, a grandes rasgos,
cómo funciona, cómo se realiza la comunicación entre el servidor y el cliente. Vamos a verlo muy por
encima, sin entrar en detalles, simplemente para entender la forma de trabajar.

El cliente tendrá instalado un cliente SQL y el servidor tendrá instalado un servidor de SQL. La base de
datos estará instalada en el servidor y será únicamente el servidor de SQL el que acceda a ésta. Cuando
nuestra aplicación realice una llamada a una sentencia SQL no será ella quien la ejecute. Esa sentencia
llamará al cliente de SQL que tenemos instalado en nuestra máquina y será él quien se ponga en
comunicación con el servidor de SQL. Una vez que el servidor SQL ha recibido la petición del cliente la
ejecutará sobre la base de datos, y el resultado de la ejecución será devuelta al cliente que se la pasará a la
aplicación. Es el funcionamiento clásico de una distribución cliente-servidor. No es el momento de ensalzar
las virtudes que tiene esta forma de trabajar, simplemente comentaré que tiene el inconveniente de la rapidez,
es lógico que el tiempo que se necesita para realizar todo el proceso desde que la aplicación realiza la llamada
al cliente con la sentencia SQL hasta que éste le devuelve los datos, es mayor que si la aplicación trabajara
directamente con la base de datos, de todas formas tampoco quiero dar la impresión de que el retardo de
tiempo es importante, porque es mínimo. Pero en contraposición encontramos muchas ventajas, sobre todo
cuando van a ser varios los usuarios que utilizando simultáneamente nuestra aplicación trabajen con la base
de datos, ventajas como: la integridad de los datos, la recuperación ante fallos, las inevitables colisiones, las
transacciones, etc.

Las instrucciones de SQL

Las instrucciones de SQL las podemos dividir en dos grandes grupos: las instrucciones que trabajan con
la estructura de los datos, Lenguaje de definición de datos (LDD), y las instrucciones que trabajan con los
datos en sí, Lenguaje de manipulación de datos (LMD).

El lenguaje de definición de datos nos permitirá:crear nuestra base de datos, los tipos de datos definidos
por el usuario, las tablas, las reglas de validación de los datos y las relaciones. El lenguaje de manipulación de
datos nos permitirá: introducir, modificar y borrar datos, realizar consultas y definir nuestros procedimientos y
triggers o disparadores. Como podemos apreciar, tenemos aun mucho trabajo por delante, pero prometo que
va a valer la pena el esfuerzo.

Comenzaremos conociendo las instrucciones de definición de datos y continuaremos viendo las de
manipulación. Para hacer más fácil el aprendizaje vamos a trabajar sobre una hipotética base de datos. Una
base de datos sencilla que nos va a permitir reflejar las explicaciones que se realicen sobre SQL en un
ejemplo práctico. Este ejemplo lo iremos intercalando con otros pequeños ejemplos no relacionados con él,
que sirvan para completar el lado práctico del aprendizaje.

A lo largo del presente artículo conoceremos las instrucciones de definición de datos, dejando para el
próximo las instrucciones de manipulación de esos datos. De todas formas, al final de esta entrega daremos
una pequeña pincelada a las instrucciones de manipulación para que el lector vaya introduciéndose un poco
en ellas y nos sirva de cierto avance o introducción para la parte de SQL, que de momento, nos vamos a
quedar sin conocer.

Diseño de una base de datos

Aunque no es estrictamente el tema de este artículo voy a nombrar brevemente los pasos que debemos
seguir cuando vamos a diseñar una base de datos. De la misma forma que ya he hecho anteriormente, vuelvo
a emplazar al lector para siguientes artículos donde trataremos este tema con mucha más profundidad.

Cuando nos enfrentamos al diseño de una base de datos muchos programadores se lanzan directamente
al interfaz del sistema gestor a comenzar a introducir tablas, atributos y relaciones. Gran error, aunque nos
encontremos en la era de las nuevas tecnologías debemos todavía comenzar nuestro trabajo con unos folios
en blanco y un lápiz, mejor gastar un poco de tiempo al principio que desesperarnos cuando estamos
terminando el trabajo porque nos hemos dado cuenta que tenemos errores de diseño, normalmente estos
errores son muy difíciles de solucionar, cuando al no detectarlos previamente hemos basado todo nuestro
diseño y trabajo sobre ellos.

Cuando tenemos que realizar el diseño de una base de datos comenzaremos por reunirnos con el cliente
y que nos especifique con todo detalle como funciona el sistema que tenemos que informatizar. Esa reunión la
tendremos que repetir cuantas veces sea necesaria hasta que cono
  • Links de descarga
http://lwp-l.com/pdf8429

Comentarios de: SQL (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad