Date post: | 25-May-2015 |
Category: |
Documents |
Upload: | monicalopez123 |
View: | 114 times |
Download: | 2 times |
qwertyuiopasdfghjklzxcvbnmqwerty
uiopasdfghjklzxcvbnmqwertyuiopasd
fghjklzxcvbnmqwertyuiopasdfghjklzx
cvbnmqwertyuiopasdfghjklzxcvbnmq
wertyuiopasdfghjklzxcvbnmqwertyui
opasdfghjklzxcvbnmqwertyuiopasdfg
hjklzxcvbnmqwertyuiopasdfghjklzxc
vbnmqwertyuiopasdfghjklzxcvbnmq
wertyuiopasdfghjklzxcvbnmqwertyui
opasdfghjklzxcvbnmqwertyuiopasdfg
hjklzxcvbnmqwertyuiopasdfghjklzxc
vbnmqwertyuiopasdfghjklzxcvbnmq
wertyuiopasdfghjklzxcvbnmqwertyui
opasdfghjklzxcvbnmqwertyuiopasdfg
hjklzxcvbnmrtyuiopasdfghjklzxcvbn
mqwertyuiopasdfghjklzxcvbnmqwert
yuiopasdfghjklzxcvbnmqwertyuiopas
CBTIS
Mónica Elizabeth López Frías
Asesora. Esperanza Pescador Espitia
Programación
Diseña Y Administra Base De Datos Avanzadas
2
Índice
BETA
Enunciado1…………………………………………………..4
Diagrama Entidad Relación
(DER1)……………………………………………………….5
Diseño1 de tablas…………………………………………..6
Tablas1………………………………………………………8
Consultas1…………………………………………………14
ITESO
Enunciado2…………………………………………………25
Diagrama Entidad Relación
(DER2)………………………………………………………26
Diseño2 de tablas…………………………………………..27
Tablas2………………………………………………………28
Consultas2…………………………………………………..30
ELECTRODOMESTICOS
Enunciado………………………………………………….40
3
Diagrama Entidad Relación
(DER)……………………………………………………41
Diseño de tablas……………………………………….42
Tablas…………………………………………………...43
Consultas………………………………………………..44
Historia y evolución de SQL…………………………..51
Comandos y sintaxis de SQL…………………………53
4
BETA
Enunciado1
La empresa BETA, es la encargada de surtir artículos y refacciones de cómputo a la zona centro de nuestro país, para ello requiere una base de datos que le ayude a la buena organización de sus datos. Cuenta con proveedores, que le surten ya sea artículos o refacciones. Necesita registrar los datos de sus clientes (nombre, dirección, e-mail, estado y teléfono), así como registrar los artículos y productos que venden, sus precios, y todo lo que se relacione con ellos. Nos han encargado la realización de las bases de datos, para lo cual necesitamos realizar el modelo entidad-relación, después la sucesión de sus tablas.
5
DER1
Propuesto en 1976-1977 por Peter P. Chen, pero no se considera la existencia de
único modelo.
El modelo entidad relación permite representar el esquema de una base de datos,
de manera grafica al descubrir lavase de datos. Información como entidades,
relaciones y atributos
Cliente Estado
Articulo
Vendedor Refacción
Tipo Refacción
Proveedor
R4
R3
R5
R1
R
7
R6
R
2
ID NOMBRE
Domic
ilio
Id
No
m.
Precio
orden
Id Tip
o
Id Nombre
Direcció
n
Id tipo Tip
o
Id Nombr
e
Dirección
6
Diseño1 de tablas
Articulo
Cliente
Estado
Orden
7
Refacción
Vendedor
8
Tablas1
Articulo
9
Cliente
10
Estado
11
Orden
12
Refacción
13
Vendedor
14
Consultas1
1.-Obtener el nombre de los clientes. Select NomCliente from cliente
2.-Obtener los nombres de los clientes y su ID de su estado. select NomCliente,IdEdo from cliente
15
3.-Obtener los estados de los clientes. SELECT NomCliente,Estado From cliente, estado where cliente.IdEdo=Estado.IdEdo
4.-Obtener los nombres de los clientes que son de Sinaloa. SELECT NomCliente,Estado From cliente, estado where cliente.IdEdo=Estado.IdEdo AND estado='Sinaloa'
5.- Obtener los Id de articulo y su cantidad. SELECT IdArt,CantArt FROM orden
16
6.-Obtenerlos nombres de los clientes que son del estado de Morelia. SELECT NomCliente, Estado FROM cliente,estado WHERE cliente.IdEdo=Estado.IdEdo AND estado='Morelia'
7.- obtener los IDs de clientes que son de queretaro. SELECT IdCliente, Estado FROM cliente,estado WHERE cliente.IdEdo=Estado.IdEdo AND estado='Queretaro'
8.- obtener obtener los Id de articulo y los id de clientes que ordenaron cantidades mayores a 4. SELECT IdArt, IdCliente FROM orden WHERE CantArt>4
9.-Obtener los nombres de los artículos que fueron ordenados por el cliente Cuenca Bravo Jose SELECT NomArt FROM articulo,orden,cliente WHERE articulo.IdArt=orden.IdArt AND orden.IdCliente=cliente.IdCliente and NomCliente='Cuenca Bravo Jose'
17
10.- obtener los nombres de los artículos que fueron ordenados en el estado de Veracruz
Select NomArt
from articulo,estado,orden,cliente
where orden.IdArt=articulo.IdArt AND orden.IdCliente=cliente.IdCliente AND
cliente.IdEdo=Estado.IdEdo AND estado='Veracruz'
11. obtener los datos de la tabla cliente SELECT * FROM cliente
18
12. obtener los nombres de los clientes que empiezan con v SELECT NomCliente FROM cliente WHERE NomCliente like 'v%';
13. obtener los nombres de los productos que fueron ordenados entre cantidades de 8 a 13
select NomArt
from orden,articulo
where articulo.IdArt = orden.IdArt AND
CantArt >= 8 AND CantArt <=13
14. obtener la cantidad máxima de producto ordenado
select MAX(CantArt)
from orden
19
15. obtener las cantidades de los productos ordenadas de mayor a menor
select CAntArt
from orden
ORDER BY CantArt DESC
1. obtener los nombres de los clientes que tienen ‘a ’
SELECT NomCliente
FROM cliente
WHERE NomCliente like '%a%';
20
2. obtener los nombres de los clientes que empiezan con r
SELECT NomCliente
FROM cliente
WHERE NomCliente like 'r%';
3. obtener los datos de la tabla articulo
SELECT *
FROM articulo;
4. obtener el nombre de todos los clientes ordenados del z a la a
SELECT NomCliente
21
FROM cliente
ORDER BY NomCliente DESC;
5. obtener el nombre de todas las refacciones ordenados alfabeticamente
SELECT NomRef
FROM refaccion
ORDER BY NomRef ASC;
22
1.Obtener el nombre de los vendedores que empiecen con la letra ‘r’, el nombre
del cliente que empiecen con ‘v’, el nombre de los artículos que empiece con la
letra ‘c’ , la cantidad de artículos ordenados de mayor a menor.
select distinctnomvend, nomcliente, nomart,cantart
from vendedor, cliente, orden, articulo
where nomvend like 'r%' and orden.idart=articulo.idart and nomcliente like "v%"
and nomart like "c%"
order by cantartasc
2.Obtener los nombres de los vendedores ordenados alfabéticamente.
SELECT NomVend
FROM vendedor
ORDER BY NomVend ASC
3.obtener el nombre y la cantidad de refacciones que estén entre
cantidades de compras de 1 a 7.
SELECT CantRef, NomRef
23
FROM orden, refaccion
WHERE refaccion.IdRef=orden.IdRef and CantRef BETWEEN 1 and 7;
4.obtener la suma de la cantidad de refacciones que fueron ordenadas.
SELECT SUM (CanRef)
FROM orden
5.obtener el precio máximo de artículo
SELECT MAX(precio)
FROM artículo
6. Obtener la cantidad de artículos y su nombre que estén entre 6 y 9 y
ordenar la cantidad de artículos ascendentemente
SELECT CantArt, NomArt
FROM orden, articulo
WHERE articulo.IdArt=orden.IdArt and CantArt
BETWEEN 6 and 9
ORDER BY CantArt ASC;
7. Obtener los nombres de los estados donde hay clientes
SELECT DISTINCT estado
FROM estado, cliente
WHEREcliente.IdEdo=estado.IdEdo
8.OBTENER LOS NOMBRES DE LOS PRODUCTOS QUE FUERON
ORDENADOS EN EL ESTADO DE MICHOACÁN.
24
SELECTNomArt, NomRef
FROM orden, articulo, refaccion, estado
WHERE orden.IdArt=articulo.IdArt AND orden.IdRef=refaccion.IdRef AND
estado.IdEdo=cliente.IdEdo AND Estado=’Morelia’
25
ITESO Enunciado2
En la web hay un dominio llamado ITESO que el ofrece a los usuarios cursos en línea en el cual se encuentra localizado un catalogo de ofertas como son diplomados, cursos de especialidades y postgrados a los usuarios se les asignan fechas, horarios, asesores, aulas virtual y el nombre del curso. Cada curso tiene un límite de usuario el periodo de realización y el número total de horas. Los usuarios para hacer los pagos lo pueden hacer de 2 formas con tarjeta de crédito con cargo a 6 meses sin intereses y la opción 2 pago en efectivo a la cuenta en el banco. Para cada curso los asesores registran productos o evidencias al termino de cada modulo, el número total de módulos para cada curso es de 4. La planeación del curso depende del número de horas y los contenidos temáticos para la extensión de la constancia final deberán de aprobar con una calificación mayor o igual a 8 con solo 2 oportunidades de reprobar por cada curso. Se sabe que cada participante solo puede tomar como máximo 3 cursos, al usuario frecuente se le otorga una beca del 100% a partir del 4° curso tomado.
26
DER2
Alumno R2 Boleta R4
Curso
R1
Faculta
d
R3
Docente
Matricula
NoCurs
o
RF
C CveFaculta
d
27
Diseño2 De Tablas
Alumno
Boleta
Docente
Especialidad
28
Tablas2 Alumno
Boleta
29
Docente
Especialidad
Materia
30
Consultas2
INSERT
1.-INSERT into materia VALUES('FIS II','Fisica II');
INSERTA LA FILA DE FISICA II.
2.-INSERT into materia VALUES('VAL III','Valores III');
INSERTA LA FILA DE LA MATERIA DE VALORES III
31
3.-INSERT into materia VALUES('OPTA','Optativa');
INSERTA LA FILA DE LA MATERIA DE OPTATIVA
4.-INSERT into materia VALUES('CAL','Calculo');
INSERTA LA FILA DE LA MATERIA DE CALCULO
32
5.-INSERT into especialidad VALUES('AU21','Arquitectura y Urbanismo');
INSERTA LA FILA DE ESPECIALIDAD DE ARQUITECTURA Y URBANISMO.
6.-INSERT into especialidad VALUES('IE53','Ingeniería Extractiva');
INSERTA LA FILA DE LA ESPECIALIDAD DE INGENIERIA EXTRACTIVA.
7.-INSERT into docente VALUES('TRGE791111C56','Trejo Garcia Edygardo','11/11/1979','Maestria','Mae.
Bioing de Fermentacion','UPG');
INSERTA LA FILA DE OTRO DOCENTE.
33
8.-INSERT into alumno VALUES('200114042','Padron Aguilar Marliset','01/02/1997','A28','A','2');
INSERTA A OTRO ALUMNO EN LA TABLA ALUMNO.
9.-INSERT into alumno VALUES('200114043','Gomez Landa Jose','02/03/1997','A28','A','2');
INSERTA A OTRO ALUMNO DISTINTO.
34
10.-INSERT into alumno VALUES('200114044','Guerrero Zapata Jesus','03/04/1997','A28','A','2');
INSERTA A OTRO ALUMNO DISTINTO A LOS OTROS.
update
11.-UPDATE alumno SET Grupo = 'I' WHERE NoControl = '200114042';
CAMBIA EL GRUPO DEL ALUMNO DE ESE NUMERO DE CONTROL.
35
12.-UPDATE alumno SET Grupo = 'I' WHERE NoControl = '200114043';
CAMBIA DE GRUPO AL ALUMNO DE ESE NUMERO DE COMTROL.
13.-UPDATE alumno SET Grupo = 'I' WHERE NoControl = '200114044';
CAMBIA AL ALUMNO DE GRUPO DE ESE NUMERO DE CONTROL(ACTUALIZA).
36
14.-UPDATE materia SET NomMat= 'Fisica 1' WHERE CveMat = 'FIS I';
ACTUALIZA LA MATERIA FISICA I
15.-UPDATE materia SET NomMat= 'Valores 3' WHERE CveMat = 'VAL I';
ACTUALIZA LA MATERIA VALORES I
37
DELETE
16.-DELETE FROM materia WHERE CveMat = 'FIS I';
ELIMINA LA FILA DE LA MATERIA DE FISICA.
17.-DELETE FROM materia WHERE CveMat = 'VAL I';
ELIMINA LA FILA DE LA MATERIA DE VALORES
38
18.-DELETE FROM alumno WHERE NoControl= '200114042';
ELIMINA AL ALUMNO DE ESE NUMERO DE CONTROL.
19.-DELETE FROM alumno WHERE NoControl= '200114043';
ELIMINA AL ALUMNO DE ESE NUMERO DE CONTROL.
39
20.-DELETE FROM alumno WHERE NoControl= '200114044';
ELIMINA AL ALUMNO DE ESE NUMERO DE CONTROL.
SELECT
21.-SELECT NomMat FROM materia WHERE NomMat = 'Optativa';
Selecciona el nombre de la materia optativa
22.-SELECT NomMat FROM materia WHERE NomMat = 'Calculo';
Selecciona el nombre de la materia calculo.
23.-SELECT NomEsp FROM especialidad WHERE NomEsp = 'Arquitectura y Urbanismo';
Selecciona el nombre de la especialidad arquitectura y urbanismo.
24.-SELECT NomEsp FROM especialidad WHERE NomEsp = 'Ingeniería Extractiva';
Selecciona el nombre de la especialidad ingenieria extractiva.
25.-SELECT NOMDOC FROM docente WHERE NOMDOC = 'Trejo Garcia Edygardo';
Selecciona el nombre del docente Trejo Garcia Edygardo.
40
ELECTRODOMESTICOS
Enunciado
Una empresa de aparatos electrónicos muy grande, es la encargada
de surtir artículos a nuestro país, para ello requiere una base de datos que le ayude a la buena organización de sus datos. Cuenta con fabricantes que hacen los componentes para los artículos. Necesita registrar los datos de sus clientes (nombre, dirección), así como registrar los artículos que venden, sus precios, y todo lo que se relacione con ellos como también sus componentes.
41
DER
Fabricante
s
Componentes R1
R2
Articulo
R3
R3
Cliente R4 Estado
CIF Domicilio Nombre Especificación
Precio
Descripción IdArticulo
IdCliente
NomCliente
IdEstado
Domicilio
IdEstado
Estado
42
Diseño De Tablas Estado
Cliente
Fabricante
Componentes
Articulo
43
Tablas Articulo
Cliente
Estado
44
Fabricantes
Componentes
45
Consultas
INSERT
1.-INSERT into Articulo VALUES (‘011’,’Estereo’,’5500’,’Entretenimiento’);
2.-INSERT into Articulo VALUES ('012','Impresora','4550','Complemento');
46
3.-INSERT into Cliente VALUES ('M411','Jesus Gonzales','Oax.','Nardo');
4.-INSERT into Cliente VALUES('M412','Manuel Chimal','Coa.','Pipila');
5.-INSERT into Fabricantes VALUES ('L20','Chapultepec');
47
UPDATE
1.-UPDATE Fabricantes SET CIF='L25' WHERE Domicilio='Galeana';
2.-UPDATE Componentes SET Especificacion=’Chico’ WHERE Nombre=’Diac’;
3.-UPDATE Componentes SET Especificacion=’Grande’ WHERE Nombre=’Pila’;
48
4.-UPDATE Articulo SET NomArt=’Mp3’ WHERE IdArticulo=’010’;
5.- UPDATE Cliente SET Direccion=’Nardo’ WHERE IdCliente=’M410’;
DELETE
1.-DELETE FROM Articulo WHERE IdArticulo=’011’;
49
2.-DELETE FROM Articulo WHERE IdArticulo=’012’;
3.-DELETE FROM Cliente WHERE IdCliente=’M411’;
4.-DELETE FROM Cliente WHERE IdCliente=’M412’;
50
5.- DELETE FROM Fabricantes WHERE CIF=’L20’;
51
Historia y evolución de SQL
La historia de SQL empieza en 1974 con la definición, por
parte de Donald Chamberlin y de otras personas que
trabajaban en los laboratorios de investigación IBM, de un
lenguaje para la que adoptaban el modelo relacional. Este
lenguaje se llamaba SEQUEL y se implemento en un
prototipo llamado SEQUEL-XRM entre 1974 y 1975. Las
experimentaciones con ese prototipo condujeron entre 1976 y
1977 a una revisión de lenguaje del lenguaje(SEQUEL/2) que
a partir de ese momento cambio de nombre por motivos
legales, convirtiéndose en SQL.
El prototipo (System R), basado en este lenguaje se adopto y
utilizo internamente en 1BM 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, 1BM comenzó a entregar sus
productos relacionales y en 1993 empezó a vender DBZ. En
el curso de los años 80, numerosas compañías
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.
52
Año Nombre Alias
1986 SQL-86 SQL-87 Primera publicación hecha
por ANSI. Confirmada por ISO en 1987.
1989 SQL-89 Revisión normal.
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ística de XML, cambios en las funciones,
estandarización del objeto séquense y de las columnas auto
numéricas.(Ver Eisenberg et al.: SQL:2003 Has Been
Published).
2006 SQL:2006 ISO/IEC 9075-
14:2006.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 para acceso
concurrente a datos ordinarios SQL y documentos XML.
2008 SQL:2008 Permite el uso de la
clausula ORDER BY fuera de las definiciones de los
53
cursores. Incluye los disparadores del tipo INSTEAD OF.
Añade la sentencia TRUNCATE.
Comandos y sintaxis de SQL
Select. Nos permite tomar información de una columna.
From. Nombre de la tabla
Where. Condición.
Order By. Nombre de la columna(ASC,DESC).
Sintaxis de los comandos
Select. Select “nom_columna” from “nom_tabla”
Distrinct. Select Distinct “nombre_columna” from
”nombre_tabla”
Where. Select “nom_columna”
From “nombre_tabla”
Where “condicion”
And/Or
Select “nom_columna”
From “nom_tabla”
54
Where “condicion”
{(And/Or) “condicion simple”}
In
Select “nom_columna”
From “nom_tabla”
Where “condicion” “nombre_columna” IN (valor)