Vous êtes sur la page 1sur 18

Informe de lectura Captulo 8

Darvin D. Villavicencio M.
INDICE

PORTADA. 1
INDICE . 2
INTRODUCCIN ... 3
DESARROLLO 4
CONCLUSIN 16
BIBLIOGRAFIA . 17
INTRODUCCION

En el siguiente trabajo se realiza un informe de lectura sobre el captulo


8 del libro del captulo 8: SQl-99: Definicin del esquema, restricciones,
consultas y vistas del libro Fundamentos de Sistemas de Bases de
Datos, de Ramez Elmasri y Shamkant B.Navathe (2007) , 5ta. Edicin.
El siguiente se hace con el fin de complementar el estudio del material
de lectura.
En este captulo se trabaja el lenguaje de consulta estructurado (SQL)
que es un lenguaje de base de datos normalizado, utilizado por el motor
de base de datos de Microsoft Jet. SQL es el lenguaje de consulta
universal para bases de datos.
Vamos a tratar los temas relacionados con SQL-99, SQL proporciona
mtodos para definir la base datos, para manipular la informacin y
para gestionar los permisos de acceso a dicha informacin. Para que un
gestor sea relacional, debe soportar SQL.
El lenguaje SQL est compuesto por comandos, clusulas, operadores y
funciones de agregado. Estos elementos se combinan en las
instrucciones para crear, actualizar y manipular las bases de datos.
En el siguiente captulo se detallar los comandos DDL de SQL, La
definicin de los datos y tipos de datos en SQL, las restricciones en
SQL, las sentencias de SQL para cambiar los esquemas, tambin trata
las consultas bsicas y complejas en SQL, Se tratan las sentencias
INSERT, DELETE y UPDATE de SQL, las restricciones como aserciones
y triggers, las vista en SQL y algunas que otras caractersticas
adicionales.
DESARROLLO
Definicin de datos y tipos de datos de SQL
El primer tema del captulo habla sobre el concepto de esquema y
catlogo. El principal comando de SQL para definir datos es la
sentencia CREATE, que se utiliza para crear esquemas, tablas
(relaciones) y dominios. Antes de todo explicare el concepto de esquema
y catlogo.
Los esquemas en SQL se identifican con un nombre de esquema e
incluye un identificador de autorizacin para indicar el usuario o la
cuenta propietaria del esquema, as como unos descriptores para cada
elemento. Los elementos del esquema son las tablas, las restricciones,
las vistas, los dominios y otras estructuras, que describen el esquema.
Los esquemas se crean con la sentencia CREATE SCHEMA. EJEMPLO:
CREATE SCHEMA EMPRESA AUTHORIZATION DVillavicencio
SQL2 tambin utiliza el concepto de catlogo, que es una coleccin de
esquemas bajo un nombre. Tambin estn los entornos que son una
instalacin de un RDBMS.
El comando CREATE TABLE de SQL es usado para especificar una
nueva relacin a la cual se le asigna un nombre con atributos y
restricciones.
Tambin se puede adjuntar explcitamente el nombre del esquema al
nombre de la relacin, separndolo con un punto, EJEMPLO:
CREATE TABLE EMPRESA. EMPLEADO
Los tipos de datos bsicos disponibles para los atributos son:
- Tipos de datos numricos: incluyen a los nmeros enteros de
varios tamaos (Interger) as como los nmeros en coma flotante
(reales).
- Tipos de datos cadenas de caracteres: pueden ser de longitud
como los char (CHAR (n)) donde n es la cantidad de caracteres u
pueden ser de longitud variable (VARCHAR (n)), donde n es la
cantidad mxima de caracteres.
- El tipo de datos cadena de bits es de longitud fija n [BIT(n)] o de
longitud variable [BIT VARYING(n)], donde n es la cantidad
mxima de bits. El valor predeterminado para n, que es la
longitud de una cadena de caracteres o de una cadena de bits, es
n.
- Tipo de datos booleano tiene los valores TRUE o FALSE. En SQL,
debido a la presencia de los valores NULL, se utiliza una lgica de
tres valores, que permite un tercer valor: UNKNOWN.
Existen otros tipos de datos como el tipo de datos DATE tiene diez
posiciones y sus componentes son AO, MES Y Da segn la forma
AAAA-MM-DD. El tipo de datos TIME tiene al menos ocho posiciones,
con los componentes HORAS, MINUTOS Y SEGUNDOS en la forma HH:
MM: SS. Tambin esta TIMESTAMP incluye los campos DATE y TIME,
ms un mnimo de seis posiciones para las fracciones decimales de
segundos y un calificador WITH TIME ZONE opcional.

Especificacin de restricciones en SQL


Existen las restricciones de clave y de integridad referencial, tambin
las restricciones en los dominios de atributo y NULLs y en la tuplas
dentro de una relacin.
Ya que existen el valor NULL, se puede especificar restricciones NOT
NULL. Tambin es posible definir un valor predeterminado con la
clusula DEFAULT <valor>.
Otro tipo de restriccin puede ser restringir los valores de atributo o
dominio con la clusula CHECK. Se puede usar para restringir numero
dentro de un rango. La clusula CHECK tambin se puede utilizar en
combinacin con la sentencia CREATE DOMAIN. Por ejemplo, podemos
escribir la siguiente sentencia:
CREATE DOMAIN NUM_D AS INTEGER CHECK (NUM_D > 0 AND
NUM_D < 21);
Hay clausula especiales para la sentencia CREATE TABLE. Una de
estas es la clusula PRIMARY KEY especifica uno o ms atributos que
constituyen la clave principal de una relacin. La clusula UNIQUE
especifica claves (secundarias) alternativas.
Con la palabra clave CONSTRAINT asigna un nombre de restriccin a
una restriccin. Los nombres de todas las restricciones dentro de un
esquema deben ser nicos. El nombre de la restriccin se usa para
identificar una restriccin en particular en caso de que la restriccin
tenga que eliminarse mas tarde y sustituirse por otra. Las asignaciones
de estos nombres son opcionales.
Podemos indicar restricciones a las tuplas mediante clausulas CHECK
al final de una sentencia CREATE TABLE. A esto se le denomina
restricciones basadas en tuplas.

Sentencias de SQL para cambiar el esquema


Los comandos de evolucin del esquema de SQL se usan utilizan para
alterar un esquema aadiendo o eliminando tablas, atributos,
restricciones y otros elementos del esquema.
Tenemos el comando DROP usados para eliminar los dominios o
restricciones, tablas. Se puede usar para eliminar un esquema, en caso
de ya no necesitar un esquema entero. Para esto se puede usar
CASCADE O RESTRICT. Con CASCADE se borra el esquema de la base
de datos y todas sus tablas, dominios y otros elementos. Con RESTRICT
el esquema solo se elimina si no contiene elemento, en caso contrario, el
DROP no se ejecutar.
El comando DROP TABLE la definicin de la tabla del catlogo. Si se
desea eliminar los registros, pero manteniendo la definicin de la tabla
para un uso futuro, entonces hay que utilizar el comando DELETE.
El comando ALTER se puede utilizar para modificar cualquier definicin
de una base de datos. En las tablas base se puede aadir o eliminar
atributos y restricciones, y cambiar la definicin de una columna.

Consultas bsicas en SQL


La sentencia bsica en SQL para recuperar informacin es SELECT. La
forma bsica de la sentencia SELECT, denominada en ocasiones
mapeado o bloque select-from-where, est formada por las clusulas
SELECT, FROM y WHERE y tiene la siguiente forma:
SELECT <Lista de atributos>
FROM <lista de tabla>
WHERE <condicin>;
En SQL, se usan los operadores =, <=, >, >= y <>, para comparar de
manera lgica los valores de los atributos entre s.
EJEMPLO:
SELECT * FROM Cliente
WHERE ClienteID=1;
SQL requiere comillas simples alrededor de valores de texto (la mayora
de los sistemas de base de datos tambin permitirn comillas dobles).
Sin embargo, los campos numricos no deben estar entre comillas.
Las clusulas SELECT y FROM son necesarias en todas las consultas
SQL. WHERE es opcional.
Se puede dar el caso de que dos atributos posean el mismo nombre que
se encuentran en relaciones diferentes. En este caso, se debe calificar el
nombre del atributo con el nombre de la relacin a fin de evitar la
ambigedad.
Esto se logra colocando como prefijo el nombre de la relacin al nombre
del atributo, y separando los dos nombres con un punto.
EJEMPLO:
SELECT Nombre, EMPLEADO. Nombre, Direccin
FROM EMPLEADO, DEPARTAMENTO
WHERE DEPARTAMENTO.Nombre = 'investigacin' AND
DEPARTAMENTO.NumeroDpto =EMPLEADO.NumeroDpto;
Tambin puede aparecer una ambigedad en el caso de las consultas
que se refieren dos veces a la misma relacin, como en el siguiente
ejemplo:
Por cada empleado, recuperar el nombre y el primer apellido del
empleado, y el nombre y el primer apellido de su supervisor inmediato.
SELECT E.Nombre, E.Apellid01, S.Nombre, S.Apellid01
FROM EMPLEADO AS E, EMPLEADO AS S
WHERE E.SuperDni=S.Dni;
Un alias puede seguir a la palabra clave AS, como se muestra en el
ejemplo puede seguir directamente al nombre de la relacin (por
ejemplo, escribiendo EMPLEADO E, EMPLEADO S en la clusula
FROM.
Los alias SQL se usan para dar a una tabla, o una columna en una
tabla, un nombre temporal.
Los alias se utilizan a menudo para hacer que los nombres de columnas
sean ms legibles. Un alias slo existe para la duracin de la consulta.
Otras caractersticas de SQL, Si no hay una clausula WHERE indica
que no existe una condicin en la seleccin de tuplas, por tanto, todas
las tuplas de la relacin especificada en la clusula FROM se califican y
seleccionan para la consulta resultante.
Si en la clusula FROM se especifica ms de una relacin y no hay una
clusula WHERE, entonces se selecciona el PRODUCTO CRUZADO
(todas las posibles combinaciones de tuplas) de esas relaciones.
Tenemos el asterisco (*) que tiene el significado de todos los atributos,
de esta manera no tenemos que listar explcitamente los nombres de los
atributos en SQL cuando queramos recuperar todos los valores de
atributos de una tupla.
EJEMPLO:
SELECT *
FROM EMPLEADO
WHERE Dno=5;
SQL trata normalmente a una tabla no como un conjunto, sino como
un multiconjunto; las tuplas duplicadas pueden aparecer ms de una
vez en una tabla, y en el resultado de una consulta. As que no se
eliminan automticamente los resultados duplicados de una consulta,
debido a que es una operacin muy costosa, el usuario podra querer
ver esas tuplas duplicadas, la mayora de los casos no queremos
eliminar los duplicados.
Para esto se crea la palabra clave DISTINCT, La sentencia SELECT
DISTINCT se utiliza para devolver nicamente valores distintos
(diferentes).
Dentro de una tabla, una columna contiene a menudo muchos valores
duplicados; ya veces slo desea enumerar los diferentes valores
(distintos). La instruccin SELECT DISTINCT se utiliza para devolver
slo valores distintos (diferentes).
En general, una consulta con SELECT DISTINCT elimina los
duplicados, mientras que una consulta con SELECT ALL no lo hace.
Especificar SELECT sin ALL ni DISTINCT (como en nuestros anteriores
ejemplos) es equivalente a SELECT ALL.
EJEMPLOS:

SELECT ALL Sueldo FROM EMPLEADO;


SELECT DISTINCT Sueldo FROM EMPLEADO;
SQL tambin dispone de las operaciones multiconjuntos
correspondientes, que van seguidas por la palabra clave ALL (UNION
ALL, EXCEPT ALL, INTERSECT ALL). Sus resultados son
multiconjuntos (los duplicados no se eliminan).
Toca el turno de hablar sobre las comparaciones de subcadenas y los
operadores aritmticos, uno de ellos es el LIKE. El operador LIKE se
utiliza en una clusula WHERE para buscar un patrn especificado en
una columna.
Hay dos comodines utilizados junto con el operador LIKE:
% - El signo de porcentaje representa cero, uno o varios caracteres
_ - El subrayado representa un solo carcter
Otro operador es BETWEEN selecciona valores dentro de un rango
determinado. Los valores pueden ser nmeros, texto o fechas. El
operador BETWEEN es inclusivo: los valores de inicio y final estn
incluidos. EJEMPLO:
SELECT * FROM Productos
WHERE Precio BETWEEN 10 AND 20;
SQL tambin nos permite ordenar las tuplas de los valores de uno o
varios atributos utilizando la clusula ORDER BY. El orden
predeterminado es ascendente.

Consultas SQL ms complejas


Hay muchas otras caractersticas que permiten consultas ms
complejas en SQL. En esta seccin se explican algunas de estas
caractersticas.
Qu es un valor NULL? Un campo con un valor NULL es un campo sin
valor. Si un campo en una tabla es opcional, es posible insertar un
nuevo registro o actualizar un registro sin agregar un valor a este
campo. A continuacin, el campo se guardar con un valor NULL. Es
importante entender que un valor NULL es diferente de un valor cero o
un campo que contiene espacios. Un campo con un valor NULL es uno
que se ha dejado en blanco durante la creacin del registro.
Cuando en una comparacin se ve implicado un NULL, se considera
que el resultado es UNKNOWN, o desconocido, SQL utiliza una lgica de
tres valores con los valores TRUE, FALSE y UNKNOWN, en lugar de la
lgica estndar de dos valores con TRUE o FALSE.

Conexiones lgicas en la lgica de tres valores:


las filas y las columnas representan los valores de los resultados de las
expresiones booleanas (condiciones de comparacin) de tres valores,
que normalmente aparecen en la clusula WHERE de una consulta
SQL.

Cmo probar valores NULL?


No es posible probar valores NULL con operadores de comparacin,
como =, <o <>. En su lugar, tendremos que utilizar los operadores IS
NULL y IS NOT NULL.
Ejemplo: La siguiente Sentencia puede usarse para enlistar las
personas que no tienen direccin.
SELECT Nombre, Direccin FROM Personas
WHERE Direccin IS NULL;
Algunas consultas requieren obtener valores existentes en la base de
datos para usarlos despus en una condicin de comparacin. Dichas
consultas se pueden formular convenientemente mediante consultas
anidadas, que son bloques select-from-where completos dentro de la
clusula WHERE de otra consulta. Esa otra consulta es la que se
conoce como consulta externa. Ejemplo:
SELECT DISTINCT NumProyecto
FROM PROYECTO
WHERE NumProyecto IN ( SELECT NumProyecto
FROM PROYECTO, DEPARTAMENTO, EMPLEADO
WHERE NumDptoProyecto=NumeroDpto AND DniDirector=Dni AND
Apellido1='Prez)

El operador IN le permite especificar varios valores en una clusula


WHERE. El operador IN es una abreviatura para varias condiciones OR.
En una subconsulta correlacionada, las consultas principales y
subordinadas extraen datos de la misma tabla. La consulta interna
realiza una funcin de agregado, tal como una estadstica y alimenta
esta informacin a la consulta externa, que la utiliza como la base de
una comparacin.
La funcin EXISTS de SQL se utiliza para comprobar si el resultado de
una consulta anidada correlacionada est vaco (no contiene tuplas) o
no. El resultado de EXISTS es un valor booleano, TRUE o FALSE.
Vamos a ilustrar el uso de EXISTS (y de NOT EXISTS).

SELECT E.Nombre, E.Apellido1


FROM EMPLEADO AS E
WHERE EXISTS ( SELECT *
FROM SUBORDINADO
WHERE E.Dni=DniEmpleado AND E.Sexo=Sexo
AND E.Nombre=NombSubordinado );
EXISTS y NOT EXISTS se usan regularmente en consultas anidadas
correlacionadas. En general, EXISTS(Q) devuelve TRUE si hay al menos
una tupla en el resultado de la consulta anidada Q, y devuelve FALSE
en caso contrario. Por otro lado, NOT EXISTS(Q) devuelve TRUE si no
hay tuplas en el resultado de la consulta anidada Q, y devuelve FALSE
en caso contrario. A continuacin, ilustramos el uso de NOT EXISTS.
El concepto de tabla concatenada (o relacin concatenada) se incorpor
a SQL para poder especificar una tabla como resultado de una
operacin de concatenacin en la clusula from de una consulta. Esta
estructura es ms fcil que mezclar todas las condiciones de seleccin y
concatenacin en la clusula WHERE. De aqu surgen la Clusula
JOIN. Una clusula JOIN se utiliza para combinar filas de dos o ms
tablas, en funcin de una columna relacionada entre ellas.
En el Lenguaje de Consultas Estructurado (SQL) hay tres tipos de JOIN:
interno, externo y cruzado. Se especifican cinco tipos de JOIN: INNER,
LEFT OUTER, RIGHT OUTER, FULL OUTER y CROSS.

Como en muchas aplicaciones de bases de datos se necesitan el


agrupamiento y la agregacin, SQL dispone de funciones que
incorporan estos conceptos: COUNT, SUM, MAX, MIN y AVG. 13 La
funcin COUNT devuelve el nmero de tuplas o valores especificados en
una consulta. Las funciones SUM, MAX, MIN y AVG se aplican a un
conjunto o multiconjunto de valores numricos y devuelven,
respectivamente, la suma, el valor mximo, el valor mnimo y el
promedio de esos valores.
Ejemplo:
Visualizar la suma de los salarios de todos los empleados, el salario
ms alto, el salario ms bajo y el sueldo medio.
SELECT SUM (Sueldo), MAX (Sueldo), MIN (Sueldo), AVG (Sueldo)
FROM EMPLEADO;
En ocasiones queremos aplicar funciones agregada a un subgrupo de
registros de una relacin, estos estando basados en algunos valores de
atributo. Ejemplo, supongamos que queremos saber el sueldo medio de
los empleados de cada departamento. En este caso, tenemos que dividir
la relacin en subconjuntos no solapados de tuplas. Cada grupo estar
compuesto por las tuplas que tienen el mismo valor para algn(os)
atributo(s), denominado(s) atributo(s) de agrupamiento. Despus
podemos aplicar la funcin independientemente a cada grupo. SQL
tiene una clusula GROUP BY para este propsito. GROUP BY
especifica los atributos de agrupamiento, que deben aparecer en la
clusula SELECT, por lo que el valor resultante de aplicar la funcin de
agregacin a un grupo de registros aparece junto con el valor de los
atributos de agrupamiento. Obtener el sueldo medio:
SELECT Dno, AVG (SUELDO)
FROM EMPLEADO
GROUP BY Dno;
las tuplas EMPLEADO se dividen en grupos: cada uno tiene el mismo
valor para el atributo de agrupamiento Dno. La funcin AVG se aplican
a cada uno de dichos grupos de tupIas.
Luego tenemos a la clusula HAVING de SQL. La clusula HAVING se
agreg a SQL porque la palabra clave WHERE no se poda utilizar con
funciones agregadas.
La siguiente instruccin SQL enumera el nmero de clientes en cada
pas. Slo se incluyen pases con ms de 5 clientes:
SELECT COUNT (ClienteID), Pas
FROM Clientes
GROUP BY Pas
HAVING COUNT (ClieneID)> 5;
En fin, para completar este tema una consulta de SQL Puede tener
hasta seis clausulas, de la cuales solo dos son obligatorias (SELECT y
FROM):
SELECT <lista de atributos y funciones>
FROM <lista de tablas>
[ WHERE <condicin> ]
[ GROUP BY <atributo(s) de agrupamiento> ]
[ HAVING <condicin de agrupamiento> ]
[ OROER BY <lista de atributos> ];
En general, en SQL hay varias formas de especificar la misma consulta.
Esta flexibilidad tiene ventajas e inconvenientes. La principal ventaja es
que el usuario puede elegir la tcnica con la que se encuentra ms
cmodo a la hora de definir una consulta. El inconveniente de tener
varias formas de especificar la misma consulta es que el usuario se
puede sentir confundido, al no saber la tcnica que tiene que utilizar
para especificar determinados tipos de consultas. Otro problema es que
puede ser ms eficaz ejecutar una consulta de una forma que de otra.

Sentencias INSERT, DELETE y UPDATE de SQL


INSERT, DELETE y UPDATE son los comandos usados para modificar
la base de dato en SQL.
El comando INSERT, es usado para aadir un registro a una relacin.
Debemos especificar el nombre y una lista de valores para la tupla. Los
valores se suministran en el orden en el que se especificaron los
atributos en la creacin de la tabla.
Ejemplo:
INSERT INTO EMPLEADO (Nombre, Apellido1, Dno, Dni) VALUES
('Ricardo', 'Roca', 4, '653298653' );
Los atributos no especificados se establecen a DEFAULT o a NULL, y los
valores se suministran en el mismo orden que los atributos enumerados
en el propio comando INSERT. Tambin es posible insertar con un solo
comando INSERT varias tuplas separadas por comas. Los valores de los
atributos que constituyen cada tupla se encierran entre parntesis.
Tenemos el comando DELETE, el cual elimina los registros existentes
en una tabla. Se debe tener cuidado al eliminar registros en una tabla!
La clusula WHERE especifica qu registros deben eliminarse. Si omite
la clusula WHERE, todos los registros de la tabla se eliminarn.
Ejemplo
La siguiente sentencia SQL borra el cliente Darvin de la tabla cliente.
DELETE FROM Clientes
WHERE ClienteNombre = 'Darvin;
El comando UPDATE es usado para modificar los registros existentes en
una relacin. Una clusula WHERE en el comando UPDATE selecciona
las tuplas de una relacin que se van a modificar.
Se debe tener cuidado al actualizar los registros en una tabla. La
clusula WHERE especifica qu registro (s) que se debe actualizar. Si
omite la clusula WHERE, todos los registros de la tabla se
actualizarn.
La siguiente instruccin SQL actualiza el primer cliente (ClientID = 1)
con una nueva persona de contacto y una nueva ciudad.
Ejemplo
UPDATE Clientes
SET Nombre = 'Darvin Villavicencio', Ciudad = 'Higuey'
WHERE ClienteID = 1;
Algunas tuplas se pueden modificar con un solo comando UPDATE: por
ejemplo, subir el sueldo un 10% a todos los empleados del
departamento:
UPDATE EMPLEADO
SET Sueldo = Sueldo * 1.1
WHERE Dno IN ( SELECT NumeroDpto FROM DEPARTAMENTO;)

Restricciones como aserciones y triggers:


Es posible especificar restricciones generales por medio de aserciones
declarativas, usando la sentencia CREATE ASSERTION. A cada
asercin se le asigna un nombre de restriccin y se especifica a travs
de una condicin parecida a la clusula WHERE de una consulta SQL.
Ejemplo, restringir el sueldo de un empleado para que no pueda ser
superior al del director del departamento:
CREATE ASSERTION RESTR_SUELDO
CHECK ( NOT EXISTS ( SELECT *
FROM EMPLEADO E, EMPLEADO M, DEPARTAMENTO D
WHERE E.Sueldo>M.Sueldo
AND E.Dno=D.NumeroDpto
AND D.DniDirector=M.Dni ) );
El nombre de restriccin es RESTR_SUELDO que va seguido por
CHECK, que a su vez le sigue una condicin la cual debe ser verdadera
en cada estado de la base de datos ara que la asercin sea verdadera.
Otra sentencia relacionada con CREATE ASSERTION es CREATE
TRIGGER, pero los triggers se utilizan de modo diferente. En muchos
casos es conveniente especificar el tipo de accin que se llevar a cabo
cuando se producen ciertos eventos y cuando se satisfacen
determinadas condiciones. En lugar de ofrecer al usuario la opcin de
abortar una operacin que provoca una violacin (como con CREATE
ASSERTION) el DBMS debe contar con otras opciones. s. En SQL se
utiliza la sentencia CREATE TRIGGER para implementar dichas
acciones. Un trigger especifica un evento (por ejemplo, una operacin de
actualizacin de la base de datos), una condicin y una accin. La
accin se ejecuta automticamente si se satisface la condicin cuando
se produce el evento.

Vistas (tablas virtuales) en SQL


En esta seccin se introducen las vistas, los problemas para actualizar
y como implementarla en los SGBD.
En SQL, una vista es una tabla virtual basada en el conjunto de
resultados de una instruccin SQL.
Una vista contiene filas y columnas, al igual que una tabla real. Los
campos de una vista son campos de una o ms tablas reales de la base
de datos. Puede agregar funciones SQL, instrucciones WHERE y JOIN a
una vista y presentar los datos como si los datos vinieran de una sola
tabla.
En SQL se usa el comando CREATE VIEW para especificar una vista. A
una vista se le asigna un nombre de tabla, o nombre de vista, una lista
de nombres de atributos y una consulta que sirve para especificar el
contenido de la vista. Si ninguno de los atributos de la vista resulta de
aplicar funciones u operaciones aritmticas, no tenemos que especificar
nombres de atributos para la vista, puesto que seran idnticos a los de
los atributos de las tablas de definicin. Si ya no necesitamos una vista,
podemos utilizar el comando DROP VIEW para deshacernos de ella.
La sintaxis para un CREATE VIEW:
CREATE VIEW NombreVista AS
SELECT columna1, columna2, ...
FROM Nombre Tabla
WHERE condicin;
Una vista siempre muestra datos actualizados El motor de base de
datos recrea los datos, utilizando la sentencia SQL de la vista, cada vez
que un usuario consulta una vista.
Implementar una vista eficazmente es compleja. Existen dos mtodos:
La modificacin de consulta implica modificar la consulta de la vista
para que sea una consulta de las tablas base subyacentes.
La materializacin de la vista, implica la creacin fsica de una tabla de
vista temporal cuando la vista es consultada primero y se mantiene esa
tabla en la suposicin de que en la vista seguirn otras consultas.

Caractersticas adicionales de SQL


Otras caractersticas adicionales son:
- SQL dispone de varias tcnicas para escribir programas en
distintos lenguajes, donde podemos incluir sentencias SQL para
acceder a bases de datos.
- Los RDBMS tendr comandos SQL y un conjunto de comandos
para especificar los parmetros de diseo fsico de la base de
datos, las estructuras de las relaciones y las rutas de acceso.
- SQL posee comandos para controlar las transacciones. Usada
para especificar las unidades de procesamiento de datos al objeto
a controlar la concurrencia y la recuperacin.
- SQL tiene estructuras de lenguaje para ciertos triggers. conocida
como tcnicas de base de datos activa, puesto que especifican
acciones que son automticamente ejecutadas por los eventos.
- En SQL se han incorporado caractersticas del modelo orientado a
objeto para mejorar el sistema objeto-relacional).
- SQL y las bases de datos relacionales pueden interactuar con las
nuevas tecnologas, como XML.

CONCLUSIN:
En este trabajo se present un informe de lectura del capitulo sobre el
captulo 8 del libro del captulo 8: SQl-99: Definicin del esquema,
restricciones, consultas y vistas del libro Fundamentos de Sistemas de
Bases de Datos, de Ramez Elmasri y Shamkant B.Navathe (2007) , 5ta.
Edicin. En este se present el lenguaje de consulta estructurado SQL.
Durante la realizacin de este trabajo, aprendimos acerca del, lenguaje
SQL, de los sistemas de gestin de bases de datos, y su importancia y
utilidad a la hora de almacenar, clasificar y manejar informacin, de
cualquier tipo.
Desde usuarios particulares, hasta grandes empresas, gozan de las
ventajas que brindan los SGBD, desde clasificar la informacin segn el
criterio deseado por el usuario, modificar la informacin que contiene
una base de datos, entre otras
Es difcil imaginar hoy en da la concentracin de informacin sin base
de datos, las pequeas o grandes industrias tienen como base de su
sistema informtico la construccin de base de datos con la que
podemos tener gran versatilidad incluso con equipos My Frame.
SQL signific un gran avance para este fin, almacenar y clasificar
informacin, adems de que, gracias a su aparicin, hoy en da existe
una gran variedad de SGBD basados en el lenguaje SQL. Desde su
estandarizacin, casi todos los programas que trabajan con bases de
datos, utilizan este lenguaje, con diferentes variaciones y funciones,
segn el tipo de software y su objetivo.
BIBLIOGRAFIA
Fundamentos de Sistemas de Bases de Datos, de Ramez Elmasri y Shamkant
B.Navathe (2007) , 5ta. Edicin.
www.3wschool.com

Abraham Silberschatz, Henry F. Korth and S. Sudarshan (2002).


Fundamentos de Bases de Datos. Editora McGraw-HILL, Madrid, 4ta. Edicin.

UNIDAD No. 3 SQL (Structured Query Language) Mtra. Romery Alberto


Monegro Santo Domingo, D.N. 22 de Julio 2013

Vous aimerez peut-être aussi