UNIVERSIDAD NACIONAL DE CHIMBORAZO ESCUELA DE INFORMATICA APLIACADA A LA EDUCACION REALIZADOPOR: AGUAGALLO DORIS, ESPIN GINA, ROSERO INES
QUE ES EL LENGUAJE SQL
Los orígenes de SQL están ligados a los de las bases de datos relacionales.
En 1970 E. F. Codd propone el modelo relacional y asociado a este un sublenguaje de acceso a los datos basado en el cálculo de predicados
Basándose en estas ideas, los laboratorios de IBM definieron el lenguaje SEQUEL (Structured English Query Language
Ya que más tarde fue amplia mente implementado por el sistema de gestión de bases de datos (SGBD)
Sin embargo, fue Oracle quien lo introdujo por primera vez en 1979 en un producto comercial
El SEQUEL terminó siendo el predecesor de SQL, que es una versión evolucionada del primero
SQL pasa a ser el lenguaje por excelencia de los diversos sistemas de gestión de bases de datos relacionales surgidos en los años siguientes y fue por fin estandarizado en 1986 por el ANSI, dando lugar a la primera versión estándar de este lenguaje, "SQL-86" o "SQL1".
SQL, DDL y DML
Lenguaje de definición de datos (DDL)
Comandos del DDL
CREATE Utilizado para crear nuevas tablas, stored procedures e índices
DROP Empleado para eliminar tablas, stored procedures e índices
ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos TRUNCATE - elimina todos los registros de la tabla, incluyendo todos los espacios asignados a los registros
Lenguaje de control de datos (DCL: Data Control Language): encargado del control y seguridad de los datos (privilegios y modos de acceso, etc).
Un lenguaje de definición de datos (Data Definition Language, DDL por sus siglas en inglés) es un lenguaje proporcionado por el sistema de gestión de base de datos
Un Data Definition Language o Lenguaje de descripción de datos (DDL) es un lenguaje de programación para definir estructuras de datos.
CREATE | CREAR
Sentencia SQL WHERE
La sentencia WHERE se usa para extraer sólo los registros que cumplan con una condición. Funciona como un filtro.
Sintaxis de la sentencia SQL WHERE
SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;
Claúsula ORDER BY
La claúsula ORDER BY se utiliza para ordenar los resultados a través de una o más columnas
SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;
Lenguaje de manipulación de datos (DML) Las sentencias de lenguaje de manipulación de datos (DML) son utilizadas para gestionar datos.
SELECT -INSERT - UPDATE -
DELETE -
INSERT
Utilizado para cargar lotes de datos en la base de datos en una única operación.
UPDATE
Utilizado para eliminar registros de una tabla de una base de datos.
DELETE
Utilizado para modificar los valores de los campos y registros especificados.
Sentencia SELECT La sentencia SELECT se utiliza para seleccionar datos de una base de datos.
SELECT column_name,column_name
FROM table_name;
SELECT * FROM table_name;
EL asterisco * significa que queremos todas las columnas de la tabla.
SELECT * FROM
A continuación podemos ver el resultado de la petición; SELECT * FROM eli.publisher; toda la información de la tabla "publisher";
La sentencia CREATE TABLE sirve para crear la estructura de una tabla no para rellenarla con datos. CREATE TABLE <nombre de tabla>
(nombre_columna1 tipo [restricción de columna],
........
nombre_columnaN tipo [restricción de columna],
[restricción_de_tabla]);
1986: SQL-86
1992
SQL-92
1989
SQL-89
1999
SQL:1999
2003
SQL:2003
2005: SQL:2005
2008
SQL:2008
EVOLUCIÓN
bring Pictures and Videos to help you
Características generales de SQL
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.
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.
Lenguaje de definición de datos: El LDD de SQL 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: El LMD de SQL incluye lenguajes de consultas basado tanto en álgebra relacional como en cálculo relacional de tuplas.
Integridad: El LDD de SQL incluye comandos para especificar las restricciones de integridad que deben cumplir los datos almacenados en la base de datos.
Definición de vistas: El LDD 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: El LDD 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:
VARCHAR2(tamaño) Dato carácter de longitud variable. Máx. 4000.
CHAR(tamaño) Dato carácter de longitud fija. Máx. 255.
NUMBER(p,s) Dato numérico de longitud variable.p entre 1..38; s entre 84..127
DATE Valores de fecha y hora. Entre el 1 Enero 4712 A.C. Y el 31 Diciembre del 4712 D.C.
LONG Dato carácter de long.variable hasta 2 Gb.
CLOB Dato carácter single-byte de hasta 4 Gb.
RAW(tamaño) y LONG RAW Datos Binarios según tamaño especificado y Datos Binarios de long.variable hasta 2 Gb.
BLOB Datos Binarios hasta 4 Gb.
BFILE Datos binarios almacenados en fich. Externo. Hasta 4 Gb.
Optimización
SQL es un lenguaje declarativo. Es decir, que especifica qué es lo que se quiere y no cómo conseguirlo, por lo que una sentencia no establece explícita mente un orden de ejecución.
El orden de ejecución interno de una sentencia puede afectar seriamente a la eficiencia del SGBD, por lo que se hace necesario que éste lleve a cabo una optimización antes de su ejecución.
Existe una ampliación de SQL conocida como FSQL (Fuzzy SQL, SQL difuso) que permite el acceso a bases de datos difusas, usando la lógica difusa