Top Banner
CENTRO DE BACHILLERATO TECNOLÓGICO industrial y de servicios No. 172 Proyecto De Base De Datos 3er Parcial Daniela Razo Razo Asesora: Esperanza Pescador Espitia
53

Proyecto 3er. parcial (navicat) (1)

Jul 19, 2015

Download

Documents

yourenotsorry
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Proyecto 3er. parcial (navicat) (1)

CENTRO DE BACHILLERATO TECNOLÓGICO

industrial y de servicios No. 172

Proyecto De Base De Datos 3er Parcial

Daniela Razo Razo

Asesora: Esperanza Pescador Espitia

Page 2: Proyecto 3er. parcial (navicat) (1)

Índice

BETA ........................................................................................................................................... 3

Tablas ........................................................................................................................................ 4

Enunciados ............................................................................ ¡Error! Marcador no definido.

Diagrama de Entidad Relación de BETA ...................................................................... 18

ITESO ........................................................................................................................................ 19

Tablas ...................................................................................................................................... 20

Enunciados ............................................................................ ¡Error! Marcador no definido.

Diagrama entidad Relación de ITESO .......................................................................... 50

HISTORIA DE SQL ................................................................................................... 51

EVOLUCIÓN DEL SQL ......................................................................................... 53

Page 3: Proyecto 3er. parcial (navicat) (1)

BETA Beta es una gran empresa que se dedica a la venta de artículos de cómputo y refacciones por todo el país, Para llevar a cabo el registro de todos los artículos y sus refacciones se hizo una base de datos y así a la ves tener toda su información en orden y asegurada. La empresa cuenta con proveedores, vendedores, los artículos y las refacciones.

Page 4: Proyecto 3er. parcial (navicat) (1)

Tablas

ARTICULO

Page 5: Proyecto 3er. parcial (navicat) (1)

CLIENTE

Page 6: Proyecto 3er. parcial (navicat) (1)

ESTADO

Page 7: Proyecto 3er. parcial (navicat) (1)

ORDEN

Page 8: Proyecto 3er. parcial (navicat) (1)

REFACCION

Page 9: Proyecto 3er. parcial (navicat) (1)

VENDEDOR

Page 10: Proyecto 3er. parcial (navicat) (1)

Querys

1.-OBTENER LOS NOMBRES DE LOS CLIENTES. SELECT NomCliente

FROM Cliente

2.-OBTENER LOS NOMBRES DE LOS CLIENTES Y EL ID DE SU ESTADO SELECT NomCliente, IdEdo

FROM cliente

3.-OBTENER LOS NOMBRES DE: CLIENTES-ESTADO

SELECT NomCliente, estado

FROM cliente, estado

WHERE cliente.IdEdo=Estado.IdEdo

Page 11: Proyecto 3er. parcial (navicat) (1)

4.-OBTENER CLIENTES-SINALOA SELECT NomCliente

FROM Clientes, Estado

Where cliente.IdEstado=Estado.IdEstado AND Estado=’Sinaloa’

5.-Obtener el id articulo y su cantidad select IdArt,CantArt

FROM orden

6.- Obtener los 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 Id de cliente que son de

Queretaro select IdCliente, estado

FROM cliente,estado

where cliente.IdEdo=Estado.IdEdo and

estado='Queretaro'

Page 12: Proyecto 3er. parcial (navicat) (1)

8.- obtener los id de Articulo y los Id de cliente 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'

10.- obtener los nombres de los artículos que fueron ordenados en el estado de

Veracruz SELECT NomArt

FROM articulo,orden, estado, cliente

WHERE articulo.IdArt=orden.IdArt AND cliente.IdEdo=Estado.IdEdo

AND orden.IdCliente=cliente.IdCliente AND estado='Veracruz'

11.- Obtener los datos de la tabla cliente SELECT *

from cliente

Page 13: Proyecto 3er. parcial (navicat) (1)

12.- Obtener los nombres de los clientes que empiecen con “V” SELECT NomCliente

from cliente

WHERE NomCliente like 'V%'

13.- Obtener los nombres de los productos que fueron ordenados en

cantidades de ocho a 13. SELECT NomArt

from articulo, orden

WHERE articulo.IdArt=orden.IdArt and CantArt>=8 AND

CantArt<=13

14.-Obtener la cantidad máxima de productos select MAX(CantArt)

FROM orden

15.- Obtener las cantidades de productos que fueron ordenados de

mayor a menor SELECT CantArt

from orden

ORDER BY CantArt DESC

Page 14: Proyecto 3er. parcial (navicat) (1)

16.- Obtener los costos, y el nombre de los artículos, ordenando los costos de

mayor a menor select NomArt, Precio

from articulo

where articulo.Precio<>"0" order by -articulo.Precio

17.- Obtener los números telefónicos de los clientes que su lada sea 411 select Tel

from Cliente

where cliente.Tel REGEXP BINARY 411

18.- Obtener los nombres de los artículos cuyos precios sean mayores o iguales

que 100, pero menores o iguales a 300 select NomArt

from articulo

where Precio>=100 AND Precio<=300

Page 15: Proyecto 3er. parcial (navicat) (1)

19.- Obtener todos los datos de la tabla Orden, que fueron en el mes de

AGOSTO. Select *

FROM orden

Where Fecha BETWEEN '2013-08-01' AND '2013-08-30'

20.- Obtener los nombres de los artículos que

empiecen con M select NomArt

from articulo

where articulo.NomArt REGEXP BINARY 'M'

21.-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 DISTINCT NomVend, 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 CantArt asc

Page 16: Proyecto 3er. parcial (navicat) (1)

22.-Obtener los nombres de los vendedores ordenados alfabéticamente.

SELECT NomVend

FROM vendedor

ORDER BY NomVend ASC

23.-Obtener el nombre y la cantidad de refacciones que estén entre cantidades

de compras de 1 a 7. SELECT CantRef, NomRef

FROM orden, refaccion

WHERE refaccion.IdRef=orden.IdRef and CantRef BETWEEN 1 and 7;

24.- Obtener la suma de la cantidad de refacciones que fueron ordenadas. Select SUM (CanRef)

From orden

25.- Obtener el precio máximo de artículo Select MAX(precio)

From artículo

26.- 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;

Page 17: Proyecto 3er. parcial (navicat) (1)

27.- Obtener los nombres de los estados donde hay clientes Select DISTINCT estado

From estado, cliente

Where cliente.IdEdo=estado.IdEdo

28.-Obtener los nombres de los productos que fueron ordenados en el estado

de Michoacán. Select NomArt, NomRef

From orden, articulo, refaccion, estado

WHERE articulo.IdArt=orden.IdArt AND cliente.IdEdo=Estado.IdEdo AND

orden.IdCliente=cliente.IdCliente AND estado='Michoacan'

Page 18: Proyecto 3er. parcial (navicat) (1)

Diagrama de Entidad Relación de

BETA

Page 19: Proyecto 3er. parcial (navicat) (1)

ITESO

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 catálogo 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.

Page 20: Proyecto 3er. parcial (navicat) (1)

Tablas ALUMNO

Page 21: Proyecto 3er. parcial (navicat) (1)

BOLETA

Page 22: Proyecto 3er. parcial (navicat) (1)

DOCENTE

Page 23: Proyecto 3er. parcial (navicat) (1)

ESPECIALIDAD

Page 24: Proyecto 3er. parcial (navicat) (1)

MATERIA

Page 25: Proyecto 3er. parcial (navicat) (1)

Querys

1.-Añadir una materia nueva a la base de datos de ITESO que su clave de materia

sea “MATALI”, y su nombre sea “Matemática aplicada”.

INSERT into materia VALUES('MATAPLI','Matematica aplicada');

Page 26: Proyecto 3er. parcial (navicat) (1)

1. Anadir una materia nueva a la base de datos de ITESO que su clave de

materia sea “CN”, y su nombre sea “Ciencias”.

INSERT into materia( CveMat , NomMat) VALUES('CN','Ciencias')

Page 27: Proyecto 3er. parcial (navicat) (1)

2. Anadir una materia nueva a la base de datos de ITESO que su clave de

materia sea “Física l”, y su nombre sea “Física ll”.

INSERT into materia VALUES('Fisica I','Fisica II');

Page 28: Proyecto 3er. parcial (navicat) (1)

3. Anadir una materia nueva a la base de datos de ITESO que su clave de

materia sea “QUIM”, y su nombre sea “Química l”.

INSERT into materia VALUES('QUIM','Quimica I');

Page 29: Proyecto 3er. parcial (navicat) (1)

4. Anadir una materia de especialidad nueva a la base de datos de ITESO que

su clave de especialidad sea “A24”, y su nombre sea “Aeronáutica”.

INSERT into especialidad VALUES('A24','Aeronáutica');

Page 30: Proyecto 3er. parcial (navicat) (1)

5. Anadir una materia de especialidad nueva a la base de datos de ITESO que

su Clave de especialidad sea “FA13”, y su nombre sea “Física y

Astronomía”.

INSERT into especialidad VALUES('FA13','Física y Astronomía');

Page 31: Proyecto 3er. parcial (navicat) (1)

6. Anadir una docente ingresada a la base de datos de ITESO con RFC

“VARS581012P12”, llamada “Valderas Ramírez Sandra”, con fecha de

nacimiento “10/12/1958” y con maestría en Filos de la Cult. “ITC”

INSERT into docente VALUES('VARS581012P12','Valderas Ramirez Sandra','10/12/1958','Maestria','Maestria en Filos de la Cult.','ITC');

Page 32: Proyecto 3er. parcial (navicat) (1)

7. Anadir una alumna ingresada a la base de datos de ITESO con numero de

control “200114039”, llamada “Gloria Avalos Aurelia”, con fecha de

nacimiento “10/16/1997”, en la especialidad “A28”, en el grupo “A”, y de

ingreso al “2 semestre”.

INSERT into alumno VALUES('200114039','Gloria Avalos Aurelia','10/16/1997','A28','A','2');

Page 33: Proyecto 3er. parcial (navicat) (1)

8. Anadir un alumno ingresado a la base de datos de ITESO con numero de

control “200114040”, llamado “Otero Alvarado Luis”, con fecha de

nacimiento “11/18/1997”, en la especialidad “A28”, en el grupo “A”, y de

ingreso al “2 semestre”.

INSERT into alumno VALUES('200114040','Otero Alvarado Luis','11/18/1997','A28','A','2');

Page 34: Proyecto 3er. parcial (navicat) (1)

9. Anadir un alumno ingresada a la base de datos de ITESO con numero de

control “200114041”, llamada “Rodríguez García Paulina”, con fecha de

nacimiento “12/29/1997”, en la especialidad “A28”, en el grupo “A”, y de

ingreso al “2 semestre”.

INSERT into alumno VALUES('200114041','Rodriguez García Paulina','12/29/1997','A28','A','2');

Page 35: Proyecto 3er. parcial (navicat) (1)

10. Actualiza en la base de datos de ITESO el grupo del alumno con numero de

control “200114039” por el grupo “H”

UPDATE alumno SET Grupo = 'H' WHERE NoControl = '200114039';

Page 36: Proyecto 3er. parcial (navicat) (1)

11. Actualiza en la base de datos de ITESO el grupo del alumno con numero de

control “200114040” por el grupo “H”

UPDATE alumno SET Grupo = 'H' WHERE NoControl = '200114040';

Page 37: Proyecto 3er. parcial (navicat) (1)

12. Actualiza en la base de datos de ITESO el grupo del alumno con numero de

control “200114041” por el grupo “H”

UPDATE alumno SET Grupo = 'H' WHERE NoControl = '200114041';

Page 38: Proyecto 3er. parcial (navicat) (1)

13. Actualiza en la base de datos de ITESO la clave de la materia de

“Matemática aplicada 1” por la clave “MATAPLI”.

UPDATE materia SET NomMat= 'Matematica Aplicada 1' WHERE CveMat = 'MATAPLI';

Page 39: Proyecto 3er. parcial (navicat) (1)

14. Actualiza en la base de datos de ITESO la clave de la materia de “Tutoría

Matemática” por la clave “TUTO”.

UPDATE materia SET NomMat= 'Tutoria Matematica' WHERE CveMat = 'TUTO';

Page 40: Proyecto 3er. parcial (navicat) (1)

15. Elimina de la base de datos de ITESO la materia con clave “MATAPLI”.

DELETE FROM materia WHERE CveMat = 'MATAPLI';

Page 41: Proyecto 3er. parcial (navicat) (1)

16. Elimina de la base de datos de ITESO la materia con clave “TUTO”.

DELETE FROM materia WHERE CveMat = 'TUTO';

Page 42: Proyecto 3er. parcial (navicat) (1)

17. Elimina de la base de datos de ITESO al alumno con numero de control

“20114039”.

DELETE FROM alumno WHERE NoControl= '200114039';

Page 43: Proyecto 3er. parcial (navicat) (1)

18. Elimina de la base de datos de ITESO al alumno con número de control

“20114040”.

DELETE FROM alumno WHERE NoControl= '200114040';

Page 44: Proyecto 3er. parcial (navicat) (1)

19. Elimina de la base de datos de ITESO al alumno con numero de control

“20114041”

DELETE FROM alumno WHERE NoControl= '200114041';

Page 45: Proyecto 3er. parcial (navicat) (1)

20. Encontrar en la base de datos de ITESO la materia de “Recursos humanos”

SELECT NomMat FROM materia WHERE NomMat = 'Recursos humanos';

Page 46: Proyecto 3er. parcial (navicat) (1)

21. Encontrar en la base de datos de ITESO la materia de “Quimica l”

SELECT NomMat FROM materia WHERE NomMat = 'Quimica I';

Page 47: Proyecto 3er. parcial (navicat) (1)

22. Encontrar en la base de datos de ITESO la especialidad de “Aeronáutica”

SELECT NomEsp FROM especialidad WHERE NomEsp = 'Aeronáutica';

Page 48: Proyecto 3er. parcial (navicat) (1)

23. Encontrar en la base de datos de ITESO la materia de “Física y

Astronomía”

SELECT NomEsp FROM especialidad WHERE NomEsp = 'Física y Astronomía';

Page 49: Proyecto 3er. parcial (navicat) (1)

24. Encontrar en la base de datos de ITESO los datos de todos los docentes.

SELECT * FROM docente

Page 50: Proyecto 3er. parcial (navicat) (1)

Diagrama entidad Relación de

ITESO

Alumno Boleta Curso

Facultad

Docente

R1

R2 R4

R3

Matricula

CveFacultad

RFC

Especialidad

1:N

N:1 N:1

N:1

Page 51: Proyecto 3er. parcial (navicat) (1)

HISTORIA 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 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

Page 52: Proyecto 3er. parcial (navicat) (1)

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.

Page 53: Proyecto 3er. parcial (navicat) (1)

EVOLUCIÓN DEL SQL Entre 1974 y 1975 se implementó en un prototipo llamado SEQUEL-XRM.

Entre 1976 y 1977, condujeron a una revisión del lenguaje (SEQUEL/2)

Cambió de nombre por motivos legales. convirtiéndose en SQL.

A partir de 1981, IBM comenzó a entregar sus productos relacionales

En 1983 empezó a vender DB2

En 1986, el ANSI adoptó SQL como estándar para los lenguajes relacionales.

En 1987 se transformó en estándar ISO, con el nombre de SQL/86.

Luego se presento la versión SQL/89.

En 1992 se lanza un nuevo estándar ampliado y revisado del SQL llamado

"SQL-92" o "SQL2“.

SQL3 fue aceptado como el nuevo estándar de SQL en 1999, después de más

de 7 años de debate.