You are on page 1of 5

EL SQL:

El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es
un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos
tipos de operaciones en ellas. Una de sus características es el manejo del álgebra y el cálculo
relacional que permiten efectuar consultas con el fin de recuperar de forma sencilla información
bases de datos, así como hacer cambios en ellas.

ORIGEN de SQL

La historia de SQL (que se pronuncia deletreando en inglés las letras que lo componen, es
decir "ese-cu-ele" y no "siquel" como se oye a menudo) empieza en 1974 con la definición,
por parte de Donald Chamberlin y de otras personas que trabajaban en los laboratorios de
investigación de IBM, de un lenguaje para la especificación de las características de las
bases de datos que adoptaban el modelo relacional. Este lenguaje se llamaba SEQUEL
(Structured English Query Language) y se implementó en un prototipo llamado SEQUEL-
XRM entre 1974 y 1975. Las experimentaciones con ese prototipo condujeron, entre 1976
y 1977, a una revisión del lenguaje (SEQUEL/2), que a partir de ese momento cambió de
nombre por motivos legales, convirtiéndose en SQL. El prototipo (System R), basado en
este lenguaje, se adoptó y utilizó internamente en IBM y lo adoptaron algunos de sus
clientes elegidos. Gracias al éxito de este sistema, que no estaba todavía comercializado,
también otras compañías empezaron a desarrollar sus productos relacionales basados en
SQL. A partir de 1981, IBM comenzó a entregar sus productos relacionales y en 1983
empezó a vender DB2. En el curso de los años ochenta, numerosas compañías (por ejemplo
Oracle y Sybase, sólo por citar algunos) comercializaron productos basados en SQL, que se
convierte en el estándar industrial de hecho por lo que respecta a las bases de datos
relacionales.

En 1986, el ANSI adoptó SQL (sustancialmente adoptó el dialecto SQL de IBM) como
estándar para los lenguajes relacionales y en 1987 se transfomó en estándar ISO. Esta
versión del estándar va con el nombre de SQL/86. En los años siguientes, éste ha sufrido
diversas revisiones que han conducido primero a la versión SQL/89 y, posteriormente, a la
actual SQL/92.
El hecho de tener un estándar definido por un lenguaje para bases de datos relacionales abre
potencialmente el camino a la intercomunicabilidad entre todos los productos que se basan
en él. Desde el punto de vista práctico, por desgracia las cosas fueron de otro modo.
Efectivamente, en general cada productor adopta e implementa en la propia base de datos
sólo el corazón del lenguaje SQL (el así llamado Entry level o al máximo el Intermediate
level), extendiéndolo de manera individual según la propia visión que cada cual tenga del
mundo de las bases de datos.
Actualmente, está en marcha un proceso de revisión del lenguaje por parte de los comités
ANSI e ISO, que debería terminar en la definición de lo que en este momento se conoce
como SQL3. Las características principales de esta nueva encarnación de SQL deberían ser
su transformación en un lenguaje stand-alone (mientras ahora se usa como lenguaje
hospedado en otros lenguajes) y la introducción de nuevos tipos de datos más complejos
que permitan, por ejemplo, el tratamiento de datos multimediales.
EVOLUCION

En la actualidad el SQL es el estándar de facto de la inmensa mayoría de los SGBD


comerciales. Y, aunque la diversidad de añadidos particulares que incluyen las distintas
implementaciones comerciales del lenguaje es amplia, el soporte al estándar SQL-92 es
general y muy amplio.

El ANSI SQL sufrió varias revisiones y agregados a lo largo del tiempo:

Año Nombre Alias Comentarios


1986 SQL-86 SQL-87 Primera publicación hecha por ANSI. Confirmada por ISO en
1987.
1989 SQL-89 Revisión menor.
1992 SQL-92 SQL2 Revisión mayor.
1999 SQL:1999 SQL2000 Se agregaron expresiones regulares, consultas recursivas (para
relaciones jerárquicas), triggers y algunas características
orientadas a objetos.
2003 SQL:2003 Introduce algunas características de XML, cambios en las
funciones, estandarización del objeto sequence y de las
columnas autonumericas. (Ver Eisenberg et al.: SQL:2003 Has
Been Published.)
2005 SQL:2005 ISO/IEC 9075-14:2005 Define las maneras en las cuales el SQL
se puede utilizar conjuntamente con XML. Define maneras de
importar y guardar datos XML en una base de datos SQL,
manipulándolos dentro de la base de datos y publicando el XML
y los datos SQL convencionales en forma XML. Además,
proporciona facilidades que permiten a las aplicaciones integrar
dentro de su código SQL el uso de XQuery, lenguaje de consulta
XML publicado por el W3C (World Wide Web Consortium)
para acceso concurrente a datos ordinarios SQL y documentos
XML.
2008 SQL:2008 Permite el uso de la cláusula ORDER BY fuera de las
definiciones de los cursores. Incluye los disparadores del tipo
INSTEAD OF. Añade la sentencia TRUNCATE. (Ver [1].)

Características generales del SQL[editar]


El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de
los sistemas relacionales y permite así gran variedad de operaciones.
Es un lenguaje declarativo de "alto nivel" o "de no procedimiento" que, gracias a su fuerte
base teórica y su orientación al manejo de conjuntos de registros —y no a registros
individuales— permite una alta productividad en codificación y la orientación a objetos. De
esta forma, una sola sentencia puede equivaler a uno o más programas que se utilizarían en
un lenguaje de bajo nivel orientado a registros. SQL también tiene las siguientes
características:

 Lenguaje de definición de datos: proporciona comandos para la definición de


esquemas de relación, borrado de relaciones y modificaciones de los esquemas de
relación.
 Lenguaje interactivo de manipulación de datos: incluye lenguajes de consultas
basado tanto en álgebra relacional como en cálculo relacional de tuplas.

 Integridad: incluye comandos para especificar las restricciones de integridad que
deben cumplir los datos almacenados en la base de datos.

 Definición de vistas: incluye comandos para definir las vistas.
 Control de transacciones: SQL tiene comandos para especificar el comienzo y el
final de una transacción.
 SQL incorporado y dinámico: Esto quiere decir que se pueden incorporar
instrucciones de SQL en lenguajes de programación como: C++, C, Java, PHP,
Cobol, Pascal y Fortran.
 Autorización:
 incluye comandos para especificar los derechos de acceso a las relaciones y a las
vistas.

Tipos de Datos

Algunos de los tipos de datos básicos de SQL son:

 Date: una fecha de calendario que contiene el año (de cuatro cifras), el mes y el día.
 Time: La hora del día en horas minutos segundos (el valor predeterminado es 0).
 Timestamp: la combinación de Date y Time.

Tipo de de dato Caracteristicas


Almacena cadenas de caracteres de una longitud variable. La
VARCHAR2(tamaño)
longitud máxima son 4000 caracteres.
Almacena caracteres con una longitud fija. Siendo 2000
CHAR(tamaño)
caracteres el máximo
Almacena datos numéricos, tanto enteros como decimales, con
o sin signo. Precisión, indica el número máximo de digitos
NUMBER(precision,escala)
que va a tener el dato. Escala, indica el número de digitos que
puede haber a la derecha del punto decimal.
Almacena cadenas de caracteres de longitud variable. Puede
LONG
almacenar hasta 2 gigas de información
Almacena datos binarios. Se emplea para el almacenamiento
LONG RAW
de gráficos, sonidos, etc. Su tamaño máximo es de 2 gigas
Almacena información de fechas y horas. De forma
predeterminada almacena un dato con el siguiente formato:
DATE
siglo/año/mes/dia/hora/minutos/segundos. Este formato se
puede cambiar con otros parámetros.
Almacena datos binarios. Puede almacenar como mucho 2000
RAW(tamaño)
bytes.
Se trata de un campo que representa una cadena hexadecimal
ROWID
que indica la dirección de una fila en su tabla
Es similar al varchar2 pero el tamaño de un carácter depende
NVARCHAR2(tamaño) de la eleccion del juego de caracteres. El tamaño máximo es
2000 bytes.
Similar al char y con las mismas caracteristicas que el
NCHAR(tamaño)
nvarchar2
CLOB Similar al LONG y se usua para objectos carácter
Similar al CLOB solo que el tamaño del carácter depende del
NCLOB
juego de caracteres utilizado
BLOB Similar al LONG RAW. Este se usa para objetos binarios.

Vista de sql
Una vista es una alternativa para mostrar datos de varias tablas. Una vista es como una
tabla virtual que almacena una consulta. Los datos accesibles a través de la vista no están
almacenados en la base de datos como un objeto.

.Una vista suele llamarse también tabla virtual porque los resultados que retorna y la
manera de referenciarlas es la misma que para una tabla.

INDICE

El índice no es más que un cursor, o nodo, especial que permite recorrer y desplazarse por
el árbol leyendo los registros necesarios y se evita recorrer ramas que no requieren ser
exploradas. Sin un índice el motor se vería obligado a recorrer el árbol entero ya que
desconoce dónde están los registros.

Para ilustrarlo más o menos, cada nodo del árbol cuando utiliza índices, tiene almacenada
información que le indica donde buscar los registros. En términos concretos, direcciones de
memoria. Entonces cuando estamos en el nodo raiz el índice tiene una especie de
"resumen", y se va haciendo más específico a medida que nos acercamos a las hojas.

You might also like