Saltar la navegación

10.- SQL.

Caso práctico

Ana.
Ministerio de Educación (Uso educativo nc)









Juan.
Ministerio de Educación (Uso educativo nc)


Hasta ahora Ana y Juan no han tenido que utilizar mucho el ordenador, ya es hora de ponerse manos a la obra. El diseño está casi finalizado y ahora es necesario pasarlo a un lenguaje adecuado. Juan había acordado con Ada que usarían Oracle como SGBD. Para trabajar con esta aplicación es necesario tener conocimientos del lenguaje que utiliza, en concreto SQL para Oracle, que tiene ciertas variaciones con el estándar. Ana está deseando comenzar a introducir los datos necesarios.

SQL (Structured Query Language ) es un lenguaje de dominio específico utilizado en programación, diseñado para administrar, y recuperar información de sistemas de gestión de bases de datos relacionales.es el lenguaje fundamental de los SGBD relacionales. Es uno de los lenguajes más utilizados en informática en todos los tiempos. Es un lenguaje declarativo y por tanto, lo más importante es definir qué se desea hacer, y no cómo hacerlo. De esto último ya se encarga el SGBD.

Hablamos por tanto de un lenguaje normalizado que nos permite trabajar con cualquier tipo de lenguaje (ASP o PHP) en combinación con cualquier tipo de base de datos (Access, SQL Server, MySQL, MariaDB, Oracle, etc.).

El hecho de que sea estándar no quiere decir que sea idéntico para cada base de datos. Así es, determinadas bases de datos implementan funciones específicas que no tienen necesariamente que funcionar en otras.

Aunque SQL está estandarizado, siempre es recomendable revisar la documentación del SGBD con el que estemos trabajando para conocer su sintaxis concreta, ya que algún comando, tipo de dato, etc., puede no seguir el estándar.

SQL posee dos características muy apreciadas, potencia y versatilidad, que contrastan con su facilidad para el aprendizaje, ya que utiliza un lenguaje bastante natural. Es por esto que las instrucciones son muy parecidas a órdenes humanas. Por esta característica se le considera un Lenguaje de Cuarta Generación.

Aunque frecuentemente oigas que SQL es un "lenguaje de consulta", ten en cuenta que no es exactamente solo eso ya que contiene muchas otras capacidades además de la de consultar la base de datos:

  • la definición de la propia estructura de los datos (DDL)
  • su manipulación (DML)
  • y la especificación de conexiones seguras (DCL)

Por tanto, el lenguaje estructurado de consultas SQL es un lenguaje que permite operar con los datos almacenados en las bases de datos relacionales.

Se puede trabajar de dos formas con SQL:

  • SQL embebido: las sentencias se escriben dentro de un programa escrito en otro lenguaje como Java, PHP,etc..
  • SQL interpretado: Podemos usar un entorno gráfico para escribir y ejecutar las sentencias (nosotros utilizaremos SQLDeveloper) o bien desde SQL*Plus que es el programa de línea de comandos de Oracle que permite ejecutar  comandos SQL y  PL/SQL de forma interactiva. 

En la unidad 1 utilizaste SQLPlus para conectarte a la base de datos y crear tu usuario. Es importante que tengas soltura en su uso, aunque manejes de forma más habitual el interface gráfico SQLDeveloper,  ya que permite hacer más operaciones.

En el Anexo III de esta unidad y en el siguiente enlace tienes los pasos a seguir para descargarte e instalarte SQLDeveloper y dar los primeros pasos:

SQLDeveloper: Instalación y primeros pasos (pdf - 964 KB)

Tipo de lenguaje de programación basado más en las matemáticas y en la lógica que los lenguajes imperativos, más cercanos estos al razonamiento humano. Los lenguajes declarativos no dicen cómo hacer una cosa, sino, más bien, qué cosa hacer. A diferencia de los imperativos, no suele haber declaración de variables ni tipos

Tecnología de Microsoft para páginas web generadas dinámicamente, ha sido comercializada como un anexo a Internet Information Services (IIS)

Lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas

Programa, utilizado en los sistemas operativos Microsoft Windows, para la gestión de bases de datos creado y modificado por Microsoft y orientado a ser usado en entornos personal o en pequeñas organizaciones

Sistema para la gestión de bases de datos producido por Microsoft basado en el modelo relacional.

Sistema de gestión de base de datos relacional utilizado en aplicaciones Web propiedad de Oracle Corporation. El software MySQL tiene licencia dual, pudiéndose usar de forma gratuita bajo licencia GNU o bien adquiriendo licencias comerciales de MySQL AB en el caso de no desear estar sujeto a los términos de la licencia GPL.

MariaDB es un sistema de gestión de bases de datos derivado de MySQL con licencia GPL (General Public License). Es desarrollado por Michael (Monty) Widenius —fundador de MySQL—, la fundación MariaDB y la comunidad de desarrolladores de software libre

Modelo a seguir al hacer algo. Son documentos que dan los detalles técnicos y las reglas necesarias para que un producto o tecnología se use correctamente y sea compatible.

Adaptable a muchas cosas o que tiene varias aplicaciones

Dichos lenguajes son utilizados por especialistas, programadores, y otros para desarrollar programas y sistemas que requieren de un procedimiento especifico para la computadora. Entre ellos se encuentran C, Fortran, Smalltalk, Ada, C++, C#, Cobol, Delphi, Java, etc. Por otro lado, los lenguajes de programación de cuarta generación son los lenguajes en los cuales en lugar de escribir cómo deben obtenerse los resultados, se especifica qué resultados son los que se quiere obtener. Por ejemplo, los lenguajes de consulta de base de datos (como el SQL) son considerados lenguajes de cuarta generación

Es un lenguaje de programación de Oracle para trabajar con SQL en bases de datos Oracle

PL/SQL es un lenguaje de procedimiento diseñado específicamente para abarcar sentencias SQL dentro de su sintaxis. El servidor de Oracle Database compila las unidades de programa PL/SQL y se almacenan dentro de la base de datos. Y en tiempo de ejecución, tanto PL/SQL como SQL se ejecutan dentro del mismo proceso de servidor, brindando una eficiencia óptima. PL/SQL hereda automáticamente la robustez, la seguridad y la portabilidad de Oracle Database.

Java es un lenguaje de programación y una plataforma informática que fue comercializada por primera vez en 1995 por Sun Microsystems. Hay muchas aplicaciones y sitios web que no funcionarán, probablemente, a menos que tengan Java instalado y cada día se crean más. Java es rápido, seguro y fiable. Desde portátiles hasta centros de datos, desde consolas para juegos hasta computadoras avanzadas, desde teléfonos móviles hasta Internet, Java está en todas partes, si es ejecutado en una plataforma no tiene que ser recompilado para correr en otra. Java es, a partir de 2012, uno de los lenguajes de programación más populares en uso, particularmente para aplicaciones de cliente-servidor de web, con unos diez millones de usuarios reportados.

PL/SQL es un lenguaje de procedimiento diseñado específicamente para abarcar sentencias SQL dentro de su sintaxis. El servidor de Oracle Database compila las unidades de programa PL/SQL y se almacenan dentro de la base de datos. Y en tiempo de ejecución, tanto PL/SQL como SQL se ejecutan dentro del mismo proceso de servidor, brindando una eficiencia óptima. PL/SQL hereda automáticamente la robustez, la seguridad y la portabilidad de Oracle Database.

Para saber más

Ya hemos llegado a los lenguajes de quinta generación, en el siguiente enlace puedes ver qué caracteriza a los lenguajes de cada generación :

En este enlace encontrarás de una manera breve, pero interesante, la historia del SQL.

Son muchas las razones por las que es importante aprender SQL y tener destreza en su uso. En el siguiente enlace tienes 7