Вы находитесь на странице: 1из 27

SQL

Temario
•Evolución del SQL
•Componentes del SQL
•Instrucciones de definición de datos
•Instrucciones de manejo de datos
•Instrucciones de control de datos
•Las subconsultas, las uniones naturales, vistas e índices
•SQL inmerso
SQL

SQL es una herramienta para organizar, gestionar y


recuperar datos almacenados en una BD.

El nombre “SQL” es una abreviación de Structured Query


Language. Por razones históricas algunos pronuncian
“sequel” (Structured English Query Language),
pero también se usa la alternativa “sql”.

Este lenguaje nos ayuda a manipular BD relacionales.


SQL

Petición SQL

Sistema de Gestión
de Datos Base de datos
Datos

Sistema Informático
SQL

SQL se puede utilizar para realizar prácticamente todas las


funciones de un SGBD:
•Definición de datos
SQL permite que usuario defina la estructura y la
organización de los datos almacenados, así como las
relaciones existentes entre ellos.
•Recuperación de datos.
SQL permite a un usuario o a un programa recuperar y
utilizar los datos almacenados en una BD.
•Manipulación de datos.
SQL permite a un usuario o a un programa actualizar la
BD, añadiendo datos nuevos, borrando los viejos y
modificando los previamente almacenados.
SQL

•Control de acceso
SQL puede ser utilizado para restringir la capacidad de
un usuario para recuperar, añadir y modificar datos,
protegiendo los datos almacenados contra accesos no
autorizados.
•Compartición de información
SQL es utilizado para coordinar la compartición de datos
entre usuarios concurrentes, asegurando que no haya
interferencias entre ellos.
•Integridad de datos
SQL define restricciones de integridad en la BD,
protegiéndola de alteraciones debidas a actualizaciones
inconsistentes o fallas del sistema.
SQL

SQL es un lenguaje informático completo de control e


interacción con un SGDB, ha emergido como el lenguaje
estándar de utilización de BD relacionales. Importante es
hacer notar que el SQL no es sí mismo un SGDB. No se
puede comprar como producto (SQL Server es otra cosa).
SQL es un lenguaje y una herramienta para comunicarse
con el SGBD.
SQL

Principales características del SQL que lo han hecho


conseguir éxito:
•Independencia de los proveedores
•Portabilidad entre sistemas informáticos
•Estándares SQL
•Aprobación de IBM
•Acuerdos con Microsoft (ODBC)
•Fundamento relacional
•Estructura de alto nivel parecido al inglés.
•Consultas ad hoc interactivas.
•Acceso a las BD desde programas
•Múltiples vistas de datos.
•Lenguaje completo de BD
•Definición dinámica de datos.
•Arquitectura cliente / servidor.
SQL

Fecha Acontecimiento
1970 Codd define el modelo de BD
relacional
1974 Comienza el proyecto System/R de
IBM
1974 Primer artículo que describe el lenguaje
SEQUEL
1978 Test de clientes del System/R
1979 Oracle introduce el primer SGBD
relacional comercial
1981 Relational Technology introduce Ingres
1982 ANSI forma el comité de estándares
SQL
1983 IBM anuncia DB2
1986 Se ratifica el estándar ANSI SQL
1986 Sysbase introduce SGBD relacionales
para transacciones
SQL
Fecha Acontecimiento
1987 Se ratifica el estándar ISO SQL
1988 Ashton-Tate y Microsoft anuncian SQL
Server para OS/2
1988 IBM anuncia la versión 2 de DB2
1989 Primera entrega de servidores de BD
SQL para OS/2
1989 Se funda SQL Access Group
1991 Se publica la especificación SQL
Access Group
1992 Primera comercialización de servidores
de BD SQL para Netware
1992 Microsoft publica la especificación
ODBC
1992 Se ratifica el estándar ANSI SQL2
1993 Primera comercialización de producto
ODBC
SQL

Sentencias

El lenguaje SQL consta de unas treinta sentencias. Cada


sentencia demanda una acción específica por parte del
SGBD tal como la creación de una nueva tabla, la
recuperación de datos o la inserción de nuevos datos en la
BD. Todas las sentencias SQL tiene la misma forma
básica, ilustrada a continuación:
SQL

Todas las sentencias comienzan con un verbo, (una


palabra clave que describe lo que la sentencia hace:
CREATE, INSERT, DELETE, SELECT, etc.). La sentencia
continua con una o más cláusulas. Una cláusula puede
especificar los datos sobre los que debe actuar la
sentencia, o proporcionar más detalles acerca de lo que la
sentencia se supone que hace.
SQL

Todas las cláusulas también comienzan con una palabra


clave (ejemplos: WHERE, FROM, INTO). Algunas
cláusulas son necesarias, otras opcionales.

Cláusulas
Verbo
DELETE FROM infventas

WHERE ventas < 2000


SQL

Las palabras claves no se deben utilizar como nombres de


objetos de la BD.
En el curso utilizaremos las palabras claves en mayúsculas
y el nombre de los objetos en minúscula, esto es un
convenio que no tiene que ser norma.
SQL

Nombres

Los objetos de una BD basada en SQL se identifican


asignándoles nombres únicos. Se especifican nombre de
tablas, columnas y usuarios (hay implementaciones de
SGBD que especifican otros objetos como disparadores,
procedimientos almacenados, relaciones, etc.).
SQL

En SQL los nombres deben contener hasta 18 caracteres y


deben comenzar con una letra y no pueden contener
espacios o caracteres de puntuación especiales.
Los nombres de las tablas se pueden cualificar utilizando el
nombre del propietario, cuando queremos hacer
referencias a tablas que no son propiedad nuestra. Para la
cualificación se utiliza un punto que separa el nombre del
propietario del nombre de la tabla

Ejemplo: sam.ventas
especifica la tabla ventas creada por sam.
SQL

En SQL los nombres deben contener hasta 18 caracteres y


deben comenzar con una letra y no pueden contener
espacios o caracteres de puntuación especiales.
Los nombres de las tablas se pueden cualificar utilizando el
nombre del propietario, cuando queremos hacer
referencias a tablas que no son propiedad nuestra. Para la
cualificación se utiliza un punto que separa el nombre del
propietario del nombre de la tabla
SQL

Un nombre de tabla cualificado puede ser utilizado en


cualquier lugar donde puede parecer el nombre de una
tabla (si existen los permisos necesarios).
Los nombres de columnas también pueden ser cualificados
para evitar confusiones en cuanto a la tabla que pertenece
la columna. La cualificación se realiza con un punto entre el
nombre de la tabla y el nombre de la columna.

Ejemplo: ventas.cantidad especifica la columna


cantidad de la tabla ventas.
SQL

Esto solo es necesario cuando en una sentencia SQL


se estén haciendo referencia a varias tablas y en ellas
existen columnas de igual nombre.
SQL

Componentes del SQL

El lenguaje SQL está compuesto por comandos, cláusulas,


operadores y funciones de agregado. Estos elementos se
combinan en las instrucciones para crear, actualizar y
manipular las bases de datos.
SQL

Comandos

Existen dos tipos de comandos SQL:

•Los DDL (data definition language) que permiten crear y


definir nuevas bases de datos, campos e índices.

•Los DML (data manipulation language) que permiten


generar consultas para ordenar, filtrar y extraer datos de la
base de datos.
SQL

Comandos

Existen dos tipos de comandos SQL:

•Los DDL (data definition language) que permiten crear y


definir nuevas bases de datos, campos e índices.

•Los DML (data manipulation language) que permiten


generar consultas para ordenar, filtrar y extraer datos de la
base de datos.
SQL

Sentencia
Objetivo
DDL
Alter
Recompilar un procedimiento almacenado.
procedure
Añadir o redefinir una columna, modificar la asignación de
Alter Table
almacenamiento.
Recoger estadísticas de rendimiento sobre los objetos de la
Analyze
BD para utilizarlas en el optimizador basado en costes.
Create
Crear una tabla.
Table
Create
Crear un índice.
Index
Drop
Eliminar una tabla.
Table
Drop Index Eliminar un índice.
SQL

Sentencia DML Objetivo


Insert Añadir filas de datos a una tabla.
Delete Eliminar filas de datos de una tabla.
Update Modificar los datos de una tabla.
Select Recuperar datos de una tabla.
Confirmar como permamentes las
Commit
modificaciones realizadas.
Deshacer todas las modificaciones
Rollback realizadas desde la última
confirmación.
SQL

Cláusulas

Las cláusulas son condiciones de modificación utilizadas


para definir los datos que desea seleccionar o manipular.

Cláusula Descripción
Utilizada para especificar la tabla de la cual se van a seleccionar los
FROM
registros
Utilizada para especificar las condiciones que deben reunir los registros
WHERE
que se van a seleccionar
GROUP
Utilizada para separar los registros seleccionados en grupos específicos
BY
HAVING Utilizada para expresar la condición que debe satisfacer cada grupo
ORDER Utilizada para ordenar los registros seleccionados de acuerdo con un
BY orden específico
SQL

Operadores de Comparación

Operador Uso
< Menor que
> Mayor que
<> Distinto de
<= Menor ó Igual que
>= Mayor ó Igual que
= Igual que
BETWEEN Utilizado para especificar un intervalo de valores.
LIKE Utilizado en la comparación de un modelo
In Utilizado para especificar registros de una base de datos
SQL

Funciones de Agregado

Las funciones de agregado se usan dentro de una cláusula


SELECT en grupos de registros para devolver un único
valor que se aplica a un grupo de registros.

Función Descripción
Utilizada para calcular el promedio de los valores de un campo
AVG
determinado
COUNT Utilizada para devolver el número de registros de la selección
Utilizada para devolver la suma de todos los valores de un campo
SUM
determinado
MAX Utilizada para devolver el valor más alto de un campo especificado
MIN Utilizada para devolver el valor más bajo de un campo especificado

Вам также может понравиться