Diciembre 5 del 2013

2013
Proyecto de base de datos este
primer proyecto constara de
una pequeña empresa llamada
beta esta empresa se encargara
de ventas varios artículos de
computo los cuales estarán en la
base de datos que se van a
administrar
INDICE

INDICE ................................................................................................................................... 1
Historia del SQL ..................................................................................................................... 2
Enunciado ................................................................................................................................ 3
Primer diagrama entidad relacion ........................................................................................... 4
Segundo diagrama entidad relacion ........................................................................................ 5

Tablas ....................................................................................................................................... 6
Diseño de las tablas ............................................................................................................... 11
Querys .................................................................................................................................... 13
Integridad Referencial ........................................................................................................... 28
Fuentes de consulta ............................................................................................................... 29
.................................................................................... 30
......................................................................................................................................... 30
Enunciado Iteso ............................................................................................................................. 31

Estructura ER ................................................................................................................................ 32
Relaciones ..................................................................................................................................... 33
Diagrama Entidad Relación .......................................................................................................... 34
Tablas ............................................................................................................................................ 35
Diseño de las Tablas ..................................................................................................................... 38
Consultas o Querys ....................................................................................................................... 40
................................................................................................................... 64
Enunciado ................................................................................................................................. 65
Entidades y Relacion ER............................................................................................................... 66
Relaciones ..................................................................................................................................... 67
Diagrama Entidad Relación .......................................................................................................... 68
Querys ........................................................................................................................................... 73

Regresar
Historia del SQL
La Historia del SQL según International Organization for Standardization (ISO) "Database Language SQL", Document ISO/IEC 9075:1992 fuentes
Desde 1974 empieza con la definición por Donald Chamberlain

y de otras

personas que trabajaban en los laboratorios de investigación IBM , de un lenguaje
para la especificación de las características de las bases de datos que adoptan el
modelo relacional. Este lenguaje se llamaba SEQUEL y se implementó en 19761977 como SEQUEL-XRM , gracias al éxito que tuvo este sistema ya mejorado en
años siguientes que no estaba comercializado , otras empresas empezaron a
desarrollar sus productos relacionales basados en SQL . En 1981 IBM comenzó a
integrar sus productos relacionales y en 1983 comenzó a vender DB2. En 1986 , el
ANSI adopto SQL como estándar para los lenguajes con el nombre de SQL/86 .
En los siguientes años este ha sufrido diferentes revisiones que han conducido a
la versión SQL/89 y posterior a la actual SQL/92. Actualmente está en marcha un
proceso de revisión del lenguaje por parte de los comités ANSI e ISO que
deberían terminar en la definición en lo que 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-alones.

Regresar
Enunciado
La empresa de ventas beta de computo es una empresa que tiene una matriz en
Guanajuato. Que cuentas con innumerables número de ventas en varios estados
del país , la empresa se ha extendido a varios estados del país , esta empresa
cuenta con ordenes en las cuales incluyen la fecha y hora en la cual se realizan ,la
empresa cuenta con varios proveedores que se encargan de surtir a las diferentes
empresas ,también cuentan con varios vendedores y estos se dedican a atender a
varios clientes , los clientes al ser atendidos por los los vendedores dejan como
datos de ventas su e-mail , su teléfono, su dirección, su nombre y son registrados
cada cliente con un id para ser reconocidos.

Regresar
Primer diagrama entidad relacion
Cliente
Id Cliente
Proveedor
Nombre
Dirección
Email
Teléfono

Articulo
Id Articulo
Nombre Art.
Precio
Unidad

Estado
Id Estado
Estado

Refaccion
Id Ref
Nombre Ref.
Precio
Unidad

Vendedor
Id vendedor
Nombre
Articulos

Proveedor
Id
Nombre
Direccion
Email
Telefono

Regresar
Segundo diagrama entidad relacion

Regresar
Tablas
Tabla articulo

Regresar
Tabla Orden

Regresar
Tabla Cliente

Regresar
Tabla Refaccion

Regresar
Tabla Vendedor
Diseño de las tablas
Diseño de la tabla Articulo

Diseño de la tabla Cliente

Diseño de la tabla Estado
Diseño de la tabla Orden

Diseño de la tabla Refacción

Diseño de la tabla Vendedor
Querys
1. Obtener los nombres de los clientes
Select NomCliente
from cliente

2.Obtener el nombre y su Id de estado.
Select NomCliente,IdEdo
From cliente

Regresar

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'

Regresar

5.Obtener los Id de articulo y su cantidad
Select IdArt,CantArt
from orden

Regresar

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'

Regresar
8.Obtener

los id de artículos y los id de clientes que ordenaron cantidades

mayores a cuatro.
Select IdArt,IdCliente
from orden
where CantArt> 4

9.Obtener los nombre de los artículos que fueron ordenados por el cliente Cuenca
Bravo José
SELECT NomArt,NomCliente
from articulo,orden,cliente
WHERE articulo.IdArt=orden.IdArt and orden.IdCliente=cliente.Idcliente and
NomCliente='Cuenca Bravo Jose'

Regresar
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.Idcliente=orden.IdCliente AND
cliente.IdEdo=estado.IdEdo AND Estado='Veracruz'

11.obtener lo datos de la tabla cliente
SELECT *
from cliente

Regresar
12. Obtener los nombre de los clientes que empiezan con V.
SELECT NomCliente
from cliente
WHERE NomCliente LIKE 'V%'

13.Obtener os 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

Regresar
14.Obtener la cantidad maxima de producto ordenado

SELECT MAX(CantArt)
FROM orden

15. Obtener las cantidades de los productos ordenadas de mayor a menor
SELECT CantArt
FROM orden
ORDER BY CantArt DESC
Regresar
16. obtener los nombres de los estados ordenados alfabéticamente.
SELECT estado
FROM estado
ORDER BY Estado ASC;

17.obtener los nombres de las refacciones que su precio sea mayor a 300 pesos
y ordenarlos alfabéticamente.
SELECT NomRef
FROM refaccion
WHERE Precio >=300
ORDER BY NomRef ASC;

Regresar
18. Obtener los nombres de los vendedores donde el nombre de su dirección
tenga una ‘a’
SELECT NomVend
FROM vendedor
WHERE Direccion like '%a%';

19. obtener los nombres de los vendedores donde su id sea ‘V0003’
SELECT NomVend
FROM vendedor
WHERE IdVend like 'V0003';

Regresar
21. OBTENER LOS NOMBRES DE LOS VENDEDORES QUE EMPIECEN CON
LA LETRA R, EL NOMBRE DE LOS CLIENTES QUE EMPIECEN CON V, EL
NOMBRE DE LOS ARTICULOS QUE EMPIECEN CON LA LETRA C Y LA
CANTIDAD DE LOS ARTICULOS ORDENADOS DE MENOR A MAYOR.
SELECT DISTINCT NomVend, NomCliente, NomArt, Cant
FROM vendedor, cliente, orden, rticulo
WHERE NomVend LIKE ‘R%’ AND orden.IdArt=articulo.IdArt AND NomCliente
LIKE ‘V%’ AND NomArt LIKE ‘C%’
ORDER BY CantArt ASC

Regresar
22. Obtener el nombre y la cantidad de refacciones que esten emtre cantidades de
compras de 1 a 7
Select CantRef,NomRef
From orden,refaccion
Where refaccion .idRef = orden.IdRef AND CantRef BETWEEN 1 AND 7;

23. OBTENER LA SUMA DE CANTIDADES DE REFACCIONES QUE FUERON
ORDENADAS.
SELECT SUM(CantRef)
FROM Orden

24. OBTENER LOS NUMEROS TELEFONICOS DE LOS CLIENTES QUE SU
LADA SEA 411.
SELECT DISTINCT Tel
FROM cliente
WHERE cliente.Tel REGEXP BINARY 411

Regresar
25. OBTENER EL PRECIO MAXIMO DE ARTICULO.
SELECT MAX(precio)
FROM articulo

26. OBTENER LA CANTIDAD DE ARTICULO Y SU NOMBRE QUE ESTEN
ENTRE

6

Y

9,

ORDENAR

LA

CANTIDAD

DE

ARTICULOS

ASCENDENTEMENTE.
SELECT CantArt, NomArt
FROM orden, articulo
WHERE articulo.IdArt=orden.IdArt AND CantArt BETWEEN 6 AND 9
ORDER BY CantArt ASC;

Regresar
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 Morelia
SELECT NomArt,NomRef
from orden,articulo,estado,refaccion,cliente
WHERE

orden.IdArt=articulo.IdArt

orden.IdCliente=cliente.IdCliente

and
AND

orden.IdRef=refaccion.IdRef
cliente.IdEdo=estado.IdEdo

and
AND

Estado="Morelia".

RegresarRegresar
Integridad Referencial
Helmut Kopka and Patrick W. Daly - "A Guide to LaTeX 2e", Second Edition,
Addison-Wesley1995

Es un sistema de reglas que utilizan la mayoría de las bases de datos relacionales
para asegurarse que los registros de las tablas relacionales sean validos.
RELACION UNO A UNO
Un registro de una tabla solo puede estar relacionado con un único registro de la
otra tabla y viceversa.

1:1
RELACION DE UNO A VARIOS
Un registro tabla solo puede estar relacionado con un único registro de la otra
tabla

y un registro de la otra tabla principal puede tener más de un registro

relacionado en la tabla secundaria.
.

N:1
RELACION DE MUCHOS A MUCHOS
Un registros de una tabla puede estar relacionado con mas de un registro de la
otra tabla y viceversa.

N:M

Regresar
Fuentes de consulta
International Organization for Standardization (ISO) - "Database Language
SQL",
Document
ISO/IEC
9075:1992
American National Standards Institute - "Database Language Embedded
SQL",
Document
ANSI
X3.168-1989
R. Elmasri and S.B. Navathe - "Fundamentals of Database Systems",
Second Edition, The Benjamin/Cummings publishing company, 1994
F.D. Rolland - "The essence of databases", Prentice Hall, 1998
E.F. Codd - "A Relational Model of Data for Large Shared Data Banks",
Communications
of
the
ACM
13,
No.
6,
June
1970
C.J. Date with Hugh Darwen - "A Guide To The SQL Standard", Fourth
Edition,
Addison-Wesley,
1997
Jan L. Harrington - "SQL Clearly Exmplained", AP Professional, 1998
Helmut Kopka and Patrick W. Daly - "A Guide to LaTeX 2e", Second
Edition,
Addison-Wesley,
1995
Jason Hunter with William Crawford - "Java Servlet Programming", O'Reilly,
1998
ftp://gatekeeper.dec.com/pub/standards/sqlHistoria
del
SQL.docx
Raccolta di Working Draft del linguaggio SQL3 in formato ps e txt

http://www.jcc.com/SQLPages/jccs_INTEGRIDAD
REFERENCIAL.docxsql.html
La pagina riguardante lo standard SQL della JCC Consulting, Inc.
http://www.postgresql.org
Il sito dedicato a PostgreSQL. Vi si puo' inoltre trovare una versione
elettronica del libro di Bruce Momjian - "PostgreSQL: Introduction and
Concepts"

Regresar
Este proyecto esta realizado bajo la supervicion de la maestra esperanza
pescador la cual nos oriento en el trayecto de la realización esperando que de
alguna manera sirva a futuro para dar una idea de lo que es un base de datos
utilizando varios manejos de información para lograr hacer

Volver
Enunciado Iteso
Estructura ER

Usuario

Curso

Acesor

Planeación

Id Usuario

Id Curso

Id Acesor

Id Planeación

Nombre

Nom. Curso

Producto

Numero Horas

Curso

Limite de Curso

Calificación

Contenido Tematico

Fecha

Realizacion

Modelo Curso

Horario

Total de horas

Contenido

Acesor

Forma de Pago

Horario
Id Horario
Horario

Pago
Id Pago

Tarj.Credito
Efectivo

Beca
Id Beca
Beca
Relaciones

Usuario

||-----------------||

Curso

N:M

Curso

||-----------------||

Asesor

N:M

Usuario

|------------------|

Beca

1:1

Asesor

||-----------------||

Planeacion

N:M

Usuario

||----------------||

Horas

N:M

Volver
Diagrama Entidad Relación

Matricula

Alumno

R1

R2

Boleta

R3

Docente

R4

Curso

NoCurso
oo

Facultad
RFC

CveFacultad

Regresar
Tablas
Tablas Alumno

Regresar
Tabla de Boleta

Regresar
Tabla Docente

Tabla Especialidad

Tabla Materia

Regresar
Diseño de las Tablas
Diseño de la Tabla Alumno

Diseño de la tabla Boleta

Diseño de la tabla Docente

Volver
Diseño de la tabla Especialidad

Diseño de la Tabla Materia

Regresar
Consultas o Querys
Agregar la materia de Ingles
1-. INSERT INTO materia(CveMat,NomMat) VALUES('ING I','Ingles I')
Antes

Despues

Corrida

Regresar
2-. Agregar un nuevo dato a la boleta con un numero de control que sea
25489752 y que este en la especialidadde Administracion.
INSERT INTO boleta(NoControl,CveMat,Parcial,CT,CP,RFC)
VALUES('25489752','ADMON','5','5','5','AICP560129U54')
Antes

Despues

Corrida

Regresar
3-.Insertar un nuevo valor a la tabla boleta que el numero de control sea 125984 y
sea de CveMat BIO
INSERT INTO boleta(NoControl,CveMat,Parcial,CT,CP,RFC)
VALUES('125894','BIO','10','10','10','FRHDU12445HFT33')
Antes

Despues

Corrida

Volver
4-.Agregar un nuevo valor a la table materia que sea geografia
INSERT INTO materia(CveMat,NomMat) VALUES('ING','Ingles I')

Antes

Despues

Corrrida

Regresa
5.-Agregar un nuevo docente

que sus datos sean 'MAYR5510566',' Patiño

Resendiz Mayra Gisela','12/07/1985','Maestra','Tec.Prog.Analistica','UPG'
INSERT INTO
docente(RFC,NOMDOC,FECNACDOC,NIVEL,CARRERA,INSTITUCION)
VALUES('MAYR5510566',' Patiño Resendiz Mayra
Gisela','12/07/1985','Maestra','Tec.Prog.Analistica','UPG')
Antes

Despues

Corrida

Volver
6-.Agregar

un

nuevo

Alumno

con

los

datos

'12344321','Fidel

Jaraleño

Teniente','17/07/1996','A56','C','3'
INSERT INTO alumno(NoControl,NomAlu,FecNac,CveEsp,Grupo,Semestre)
VALUES('12344321','Fidel Jaraleño Teniente','17/07/1996','A56','C','3')

Antes

Despues

Corrida

Regresa
7-.Actualizar un alumno que es del grupo C con un nuevo numero de control que

sea ‘ 200118852'
UPDATE alumno
set Grupo='D'
WHERE NoControl='200118852'

Antes

Despues

Corrida

Regresar
8-.Eliminar el alumno con el numero de control '12344321'
DELETE FROM alumno
WHERE Nocontrol='12344321'
Antes

Despues

Corrida

Volver
9-.Eliminar la columna Nocontrol de la tabla alumno
DELETE FROM alumno
WHERE Nocontrol='Nocontrol'

Antes

Despues

Corrida

Volver
10-.Eliminar la materia de Ingles
DELETE FROM materia
WHERE CveMat='ING 1'
Antes

Despues

Corrida

Regresar
11-.Eliminar la columna CveMat en la tabla materia
DELETE FROM materia
WHERE CveMat='CveMa'
Antes

Despues

Corrida

Volver
13-. Eliminar el numero de control '125894'
DELETE FROM boleta
WHERE NoControl='125894'
Antes

Despues

Corrida

Volver
14-.Eliminar el RFC ‘AICP560129U54' de la tabla boleta
DELETE FROM boleta
WHERE RFC='AICP560129U54'
Antes

Despues

Corrida

Regresar
15-.Eliminar de la tabla docente a' Patiño Resendiz Mayra Gisela'
DELETE FROM docente
WHERE NOMDOC=' Patiño Resendiz Mayra Gisela'
Antes

Despues

Corrida

Volver
16-.Actualizar la tabla docente con un cambio a el RFC del docente 'Contreras Ruiz
Nicolas Gerardo'
UPDATE docente
set RFC ='C45784E44'
WHERE NOMDOC ='Contreras Ruiz Nicolas Gerardo'
Antes

Despues

Corrida

Volver
17-.Actualizar la tabla alumno el numero de control '2547892' al alumno 'Ramirez
Robledo Hiram'
UPDATE alumno
set NoControl ='2547892'
WHERE NomAlu ='Ramirez Robledo Hiram'

Antes

Despues

Corrida

Regresa
18-.Actualizar el nombre del docente 'Quintana Aguado Miguel Angel' por
'Quintana Miguel Angel'

UPDATE docente
set NOMDOC ='Quintana Miguel Angel'
WHERE NOMDOC ='Quintana Aguado Miguel Angel'
Antes

Despues

Corrida

Volver
19-. Actualizar la tabla boleta el CP que sea 10 donde su numero de control sea
'200118852'
Antes

Despues

Corrida

Volver
20-.Eliminar de la tabla docente la columna RFC
DELETE FROM docente
WHERE RFC ='RFC'
Antes

Despues

Corrida

Volver
21-.Agregar la especialidad de ofimatica
INSERT INTO especialidad (CveEsp,NomEsp)
VALUES ('Of59','Ofimatica')
Antes

Despues

Corrida

Regresar
22-.Eliminar la especialidad con la CveEsp ‘Of59’
DELETE FROM especialidad
WHERE CveEsp='Of59'
Antes

Despues

Corrida

Volver
23-.Actualizar la tabla docente el RFC RVOA5872099 con el nombre de docente
'Rosa Velazquez Angelica'
UPDATE docente
set RFC='RVOA5872099'
WHERE NOMDOC='Rosa Velazquez Angelica'
Antes

Despues

Corrida

Volver
24-.Actualizar la tabla especialidad en el CveEsp E50 a CveEsp 00
UPDATE especialidad
set CveEsp='E00'
WHERE CveEsp='E50'
Antes

Despues

Corrida

Volver
25-.Eliminar la columna de CveEsp de la tabla especialidad
DELETE FROM especialidad
WHERE CveEsp='CveEsp'
Antes

Despues

Corrida

Volver
Proyecto de base de datos completo
Enunciado

Regresar
Entidades y Relacion ER
Departamento

Empleado

Proyecto

Id Dept

RFC

Id Pro

Nombre

Dirección

Nombre

Empleado

Salario

Local

Sexo
Año Nacimiento

Dependencia

Local

Id Dep

Id local

Nombre

Num Local

Sexo
Fech Nac

Volver
Relaciones
Departamento ||----------------||

Empleado

1:M

Empleado

|-----------------||

Dependiente

1:M

Departamento

|-----------------|

Local

1:1

Empleado

|-----------------||

Proyecto

1:M

Volver
Diagrama Entidad Relación
Salario

Id Dept

Nombre

RFC

Emplea

R2

Departamento

sexo

Nombre

direccion

R4

Empleado

Local

R3

R1

Proyectos
Nombre

NoCurso
oo
sexo

Dependencia

Locales
Nombre

IdDep

Id Local

Num local

FechNac

Regresar
DISEÑO DE TABLAS.

Departamento.

Dependientes.

Empleado.

Regresar
Local.
Proyecto.

Volver
TABLAS
Departamento.

Dependiente.

Volver
Empleado.
Local.

Volver
Querys
1-. Agregar el local Escovedo con un Id de 73496793 en la tabla local.
INSERT INTO `local`VALUES ('73496793','Escovedo')
Antes

Despues

Corrida

Volver
2.-Agregar el departamento Historia con un Id de 346436. que tenga 9 locales en
la tabla departamento
INSERT INTO departamento VALUES ('346436','Historia','9')

Antes

Despues

Corrida

Volver
3.-Agregar el proyecto JDSF con un Id de 35739352 del local Vásquez en la tabla
Proyecto.
INSERT INTO proyecto VALUES ('35739352','JDSF','Vasquez')

Antes

Despues

Corrida

Regresar
4-. Agregar el empleado Mozqueda Arriaga Veronica con un Id de 52375258,
dirección de Hidalgo No.4, fecha de nacimiento de 09/12/1969, de sexo femenino
y que tenga de salario 1580 en la tabla empleado.
INSERT

INTO

empleado

VALUES

('52375258','Mozqueda

Arriaga

Veronica','Hidalgo No.4','09/12/1969','F','1580')

Antes

Despues

Corrida

Regresar
5.-Eliminar de la table local el local que tenga el Id de 73496793.
DELETE FROM `local`
WHERE IdLocal='73496793'

Antes

Despues

Corrida

Volver
6.-Eliminar de la tabla proyecto el proyecto con el nombre JDSF.
DELETE FROM proyecto
WHERE NomPoyec='JDSF'

Antes

Despues

Corrida

Volver
7.-Eliminar de la tabla empleado el empleado que tenga el salario de 1580.
DELETE FROM empleado
WHERE Salario='1580'

Antes

Despues

Corrida

Regresar
8-. Eliminar de la tabla departamento el departamento que tenga 9 locales.
DELETE FROM departamento
WHERE Locales='9'

Antes

Despues

Corrida

Regresar
9.- Cambiar la relacion de hermanos a primos de la table dependientes.
UPDATE dependientes
SET Relacion='Primo'
WHERE Relacion='Hermano'

Antes

Despues

Corrida

Regresar
10-.Cambiar el IdProyecto 3795735 por 72386406 de la tabla proyecto.
UPDATE proyecto
SET IdProyecto='72386406'
WHERE IdProyecto='3795735'

Antes

Despues

Corrida

Volver
11-.Cambiar el nombre de local lopez por Hernandez de la tabla local.
UPDATE `local`
SET NomLocal='Hernandez'
WHERE NomLocal='Lopez'.

Antes

Despues

Corrida

Volver
12-. Cambiar el salario de 900 por 1150 de la tabla empleado.
UPDATE empleado
SET Salario='1150'
WHERE Salario='900'

Antes

Despues

Corrida

Volver
13-. Obtener los empleados que sus nombres empiezan con T.
SELECT Nombre
FROM empleado WHERE Nombre like 'T%'

14.-Obtener los nombres de los empleados de la table
empleado en orden alfabetico.
SELECT Nombre
FROM empleado
ORDER BY Nombre ASC
Corrida

Regresar
15-. Obtener los Id de proyecto que tengan el número 7 de la tabla proyecto.
SELECT DISTINCT IdProyecto
FROM proyecto
WHERE proyecto.IdProyecto REGEXP BINARY 7

Corrida

Volver

Más contenido relacionado

PDF
Ejercicios resueltos de sql
PDF
Ejercicio practico LibreOffice Impress (Parque Selwo Marina)
PPT
Normalizacion
PPT
Ordenacion Burbuja
PDF
Prolog ejercicios resueltos
DOCX
ejercicios de recorrido de grafos (arboles)
PPTX
Estructura de datos I pilas
PDF
Customer exit variables in sap
Ejercicios resueltos de sql
Ejercicio practico LibreOffice Impress (Parque Selwo Marina)
Normalizacion
Ordenacion Burbuja
Prolog ejercicios resueltos
ejercicios de recorrido de grafos (arboles)
Estructura de datos I pilas
Customer exit variables in sap

Destacado (10)

PDF
Plan de curso de Diseño de Bases de Datos-080324-150303
PDF
Proyecto Final(Paneles)
PDF
PROYECTO HERENCIA FINAL
DOCX
Proyectos de bases de datos
PPTX
Proyecto De Base De Datos
DOC
Ip project
PDF
SISTEMA DE FACTURACION (Ejemplo desarrollado)
PPTX
PROYECTO FERRETERIA LA 87
PPTX
Proyecto Final Base De Datos
DOCX
Airlines Database Design
Plan de curso de Diseño de Bases de Datos-080324-150303
Proyecto Final(Paneles)
PROYECTO HERENCIA FINAL
Proyectos de bases de datos
Proyecto De Base De Datos
Ip project
SISTEMA DE FACTURACION (Ejemplo desarrollado)
PROYECTO FERRETERIA LA 87
Proyecto Final Base De Datos
Airlines Database Design
Publicidad

Similar a Proyecto de base de datos completo (20)

PDF
PROYECTODEBASEDEDATOSJESSI
DOCX
Proyecto 2
PDF
MichelleHernandezBD
PDF
PRIMER PROYECTO DE BASE DE DATOS HERIBERTO RAZO BOCANEGRA
PDF
Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥
PDF
Bases de Datos CBTis172
DOCX
Base de datos para empresas
PDF
Prioyecto de BASE DE DATOS LISSET ALEJOS JARAL
PDF
PDF
Base de datos avanzados cb tis 172
PDF
Proyecto1 Bases de Datos
PDF
PDFBETA
PDF
Basede datos trabajo Monica Lopez
PDF
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
PDF
Proyecto 3er. parcial (navicat) (1)
PDF
BD cap 5 SQL.pdf
PPT
Sq Lv1a
DOCX
Teoria de sql y ejercicios
PROYECTODEBASEDEDATOSJESSI
Proyecto 2
MichelleHernandezBD
PRIMER PROYECTO DE BASE DE DATOS HERIBERTO RAZO BOCANEGRA
Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥
Bases de Datos CBTis172
Base de datos para empresas
Prioyecto de BASE DE DATOS LISSET ALEJOS JARAL
Base de datos avanzados cb tis 172
Proyecto1 Bases de Datos
PDFBETA
Basede datos trabajo Monica Lopez
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto 3er. parcial (navicat) (1)
BD cap 5 SQL.pdf
Sq Lv1a
Teoria de sql y ejercicios
Publicidad

Proyecto de base de datos completo

  • 1. Diciembre 5 del 2013 2013 Proyecto de base de datos este primer proyecto constara de una pequeña empresa llamada beta esta empresa se encargara de ventas varios artículos de computo los cuales estarán en la base de datos que se van a administrar
  • 2. INDICE INDICE ................................................................................................................................... 1 Historia del SQL ..................................................................................................................... 2 Enunciado ................................................................................................................................ 3 Primer diagrama entidad relacion ........................................................................................... 4 Segundo diagrama entidad relacion ........................................................................................ 5 Tablas ....................................................................................................................................... 6 Diseño de las tablas ............................................................................................................... 11 Querys .................................................................................................................................... 13 Integridad Referencial ........................................................................................................... 28 Fuentes de consulta ............................................................................................................... 29 .................................................................................... 30 ......................................................................................................................................... 30 Enunciado Iteso ............................................................................................................................. 31 Estructura ER ................................................................................................................................ 32 Relaciones ..................................................................................................................................... 33 Diagrama Entidad Relación .......................................................................................................... 34 Tablas ............................................................................................................................................ 35 Diseño de las Tablas ..................................................................................................................... 38 Consultas o Querys ....................................................................................................................... 40 ................................................................................................................... 64 Enunciado ................................................................................................................................. 65 Entidades y Relacion ER............................................................................................................... 66 Relaciones ..................................................................................................................................... 67 Diagrama Entidad Relación .......................................................................................................... 68 Querys ........................................................................................................................................... 73 Regresar
  • 3. Historia del SQL La Historia del SQL según International Organization for Standardization (ISO) "Database Language SQL", Document ISO/IEC 9075:1992 fuentes Desde 1974 empieza con la definición por Donald Chamberlain y de otras personas que trabajaban en los laboratorios de investigación IBM , de un lenguaje para la especificación de las características de las bases de datos que adoptan el modelo relacional. Este lenguaje se llamaba SEQUEL y se implementó en 19761977 como SEQUEL-XRM , gracias al éxito que tuvo este sistema ya mejorado en años siguientes que no estaba comercializado , otras empresas empezaron a desarrollar sus productos relacionales basados en SQL . En 1981 IBM comenzó a integrar sus productos relacionales y en 1983 comenzó a vender DB2. En 1986 , el ANSI adopto SQL como estándar para los lenguajes con el nombre de SQL/86 . En los siguientes años este ha sufrido diferentes revisiones que han conducido a la versión SQL/89 y posterior a la actual SQL/92. Actualmente está en marcha un proceso de revisión del lenguaje por parte de los comités ANSI e ISO que deberían terminar en la definición en lo que 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-alones. Regresar
  • 4. Enunciado La empresa de ventas beta de computo es una empresa que tiene una matriz en Guanajuato. Que cuentas con innumerables número de ventas en varios estados del país , la empresa se ha extendido a varios estados del país , esta empresa cuenta con ordenes en las cuales incluyen la fecha y hora en la cual se realizan ,la empresa cuenta con varios proveedores que se encargan de surtir a las diferentes empresas ,también cuentan con varios vendedores y estos se dedican a atender a varios clientes , los clientes al ser atendidos por los los vendedores dejan como datos de ventas su e-mail , su teléfono, su dirección, su nombre y son registrados cada cliente con un id para ser reconocidos. Regresar
  • 5. Primer diagrama entidad relacion Cliente Id Cliente Proveedor Nombre Dirección Email Teléfono Articulo Id Articulo Nombre Art. Precio Unidad Estado Id Estado Estado Refaccion Id Ref Nombre Ref. Precio Unidad Vendedor Id vendedor Nombre Articulos Proveedor Id Nombre Direccion Email Telefono Regresar
  • 6. Segundo diagrama entidad relacion Regresar
  • 12. Diseño de las tablas Diseño de la tabla Articulo Diseño de la tabla Cliente Diseño de la tabla Estado
  • 13. Diseño de la tabla Orden Diseño de la tabla Refacción Diseño de la tabla Vendedor
  • 14. Querys 1. Obtener los nombres de los clientes Select NomCliente from cliente 2.Obtener el nombre y su Id de estado. Select NomCliente,IdEdo From cliente Regresar 3.obtener los estados de los clientes.
  • 15. 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' Regresar 5.Obtener los Id de articulo y su cantidad
  • 16. Select IdArt,CantArt from orden Regresar 6.Obtener los nombres de los clientes que son del estado de Morelia.
  • 17. 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' Regresar
  • 18. 8.Obtener los id de artículos y los id de clientes que ordenaron cantidades mayores a cuatro. Select IdArt,IdCliente from orden where CantArt> 4 9.Obtener los nombre de los artículos que fueron ordenados por el cliente Cuenca Bravo José SELECT NomArt,NomCliente from articulo,orden,cliente WHERE articulo.IdArt=orden.IdArt and orden.IdCliente=cliente.Idcliente and NomCliente='Cuenca Bravo Jose' Regresar
  • 19. 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.Idcliente=orden.IdCliente AND cliente.IdEdo=estado.IdEdo AND Estado='Veracruz' 11.obtener lo datos de la tabla cliente SELECT * from cliente Regresar
  • 20. 12. Obtener los nombre de los clientes que empiezan con V. SELECT NomCliente from cliente WHERE NomCliente LIKE 'V%' 13.Obtener os 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 Regresar
  • 21. 14.Obtener la cantidad maxima de producto ordenado SELECT MAX(CantArt) FROM orden 15. Obtener las cantidades de los productos ordenadas de mayor a menor SELECT CantArt FROM orden ORDER BY CantArt DESC
  • 23. 16. obtener los nombres de los estados ordenados alfabéticamente. SELECT estado FROM estado ORDER BY Estado ASC; 17.obtener los nombres de las refacciones que su precio sea mayor a 300 pesos y ordenarlos alfabéticamente. SELECT NomRef FROM refaccion WHERE Precio >=300 ORDER BY NomRef ASC; Regresar
  • 24. 18. Obtener los nombres de los vendedores donde el nombre de su dirección tenga una ‘a’ SELECT NomVend FROM vendedor WHERE Direccion like '%a%'; 19. obtener los nombres de los vendedores donde su id sea ‘V0003’ SELECT NomVend FROM vendedor WHERE IdVend like 'V0003'; Regresar
  • 25. 21. OBTENER LOS NOMBRES DE LOS VENDEDORES QUE EMPIECEN CON LA LETRA R, EL NOMBRE DE LOS CLIENTES QUE EMPIECEN CON V, EL NOMBRE DE LOS ARTICULOS QUE EMPIECEN CON LA LETRA C Y LA CANTIDAD DE LOS ARTICULOS ORDENADOS DE MENOR A MAYOR. SELECT DISTINCT NomVend, NomCliente, NomArt, Cant FROM vendedor, cliente, orden, rticulo WHERE NomVend LIKE ‘R%’ AND orden.IdArt=articulo.IdArt AND NomCliente LIKE ‘V%’ AND NomArt LIKE ‘C%’ ORDER BY CantArt ASC Regresar
  • 26. 22. Obtener el nombre y la cantidad de refacciones que esten emtre cantidades de compras de 1 a 7 Select CantRef,NomRef From orden,refaccion Where refaccion .idRef = orden.IdRef AND CantRef BETWEEN 1 AND 7; 23. OBTENER LA SUMA DE CANTIDADES DE REFACCIONES QUE FUERON ORDENADAS. SELECT SUM(CantRef) FROM Orden 24. OBTENER LOS NUMEROS TELEFONICOS DE LOS CLIENTES QUE SU LADA SEA 411. SELECT DISTINCT Tel FROM cliente WHERE cliente.Tel REGEXP BINARY 411 Regresar
  • 27. 25. OBTENER EL PRECIO MAXIMO DE ARTICULO. SELECT MAX(precio) FROM articulo 26. OBTENER LA CANTIDAD DE ARTICULO Y SU NOMBRE QUE ESTEN ENTRE 6 Y 9, ORDENAR LA CANTIDAD DE ARTICULOS ASCENDENTEMENTE. SELECT CantArt, NomArt FROM orden, articulo WHERE articulo.IdArt=orden.IdArt AND CantArt BETWEEN 6 AND 9 ORDER BY CantArt ASC; Regresar
  • 28. 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 Morelia SELECT NomArt,NomRef from orden,articulo,estado,refaccion,cliente WHERE orden.IdArt=articulo.IdArt orden.IdCliente=cliente.IdCliente and AND orden.IdRef=refaccion.IdRef cliente.IdEdo=estado.IdEdo and AND Estado="Morelia". RegresarRegresar
  • 29. Integridad Referencial Helmut Kopka and Patrick W. Daly - "A Guide to LaTeX 2e", Second Edition, Addison-Wesley1995 Es un sistema de reglas que utilizan la mayoría de las bases de datos relacionales para asegurarse que los registros de las tablas relacionales sean validos. RELACION UNO A UNO Un registro de una tabla solo puede estar relacionado con un único registro de la otra tabla y viceversa. 1:1 RELACION DE UNO A VARIOS Un registro tabla solo puede estar relacionado con un único registro de la otra tabla y un registro de la otra tabla principal puede tener más de un registro relacionado en la tabla secundaria. . N:1 RELACION DE MUCHOS A MUCHOS Un registros de una tabla puede estar relacionado con mas de un registro de la otra tabla y viceversa. N:M Regresar
  • 30. Fuentes de consulta International Organization for Standardization (ISO) - "Database Language SQL", Document ISO/IEC 9075:1992 American National Standards Institute - "Database Language Embedded SQL", Document ANSI X3.168-1989 R. Elmasri and S.B. Navathe - "Fundamentals of Database Systems", Second Edition, The Benjamin/Cummings publishing company, 1994 F.D. Rolland - "The essence of databases", Prentice Hall, 1998 E.F. Codd - "A Relational Model of Data for Large Shared Data Banks", Communications of the ACM 13, No. 6, June 1970 C.J. Date with Hugh Darwen - "A Guide To The SQL Standard", Fourth Edition, Addison-Wesley, 1997 Jan L. Harrington - "SQL Clearly Exmplained", AP Professional, 1998 Helmut Kopka and Patrick W. Daly - "A Guide to LaTeX 2e", Second Edition, Addison-Wesley, 1995 Jason Hunter with William Crawford - "Java Servlet Programming", O'Reilly, 1998 ftp://gatekeeper.dec.com/pub/standards/sqlHistoria del SQL.docx Raccolta di Working Draft del linguaggio SQL3 in formato ps e txt http://www.jcc.com/SQLPages/jccs_INTEGRIDAD REFERENCIAL.docxsql.html La pagina riguardante lo standard SQL della JCC Consulting, Inc. http://www.postgresql.org Il sito dedicato a PostgreSQL. Vi si puo' inoltre trovare una versione elettronica del libro di Bruce Momjian - "PostgreSQL: Introduction and Concepts" Regresar
  • 31. Este proyecto esta realizado bajo la supervicion de la maestra esperanza pescador la cual nos oriento en el trayecto de la realización esperando que de alguna manera sirva a futuro para dar una idea de lo que es un base de datos utilizando varios manejos de información para lograr hacer Volver
  • 33. Estructura ER Usuario Curso Acesor Planeación Id Usuario Id Curso Id Acesor Id Planeación Nombre Nom. Curso Producto Numero Horas Curso Limite de Curso Calificación Contenido Tematico Fecha Realizacion Modelo Curso Horario Total de horas Contenido Acesor Forma de Pago Horario Id Horario Horario Pago Id Pago Tarj.Credito Efectivo Beca Id Beca Beca
  • 39. Diseño de las Tablas Diseño de la Tabla Alumno Diseño de la tabla Boleta Diseño de la tabla Docente Volver
  • 40. Diseño de la tabla Especialidad Diseño de la Tabla Materia Regresar
  • 41. Consultas o Querys Agregar la materia de Ingles 1-. INSERT INTO materia(CveMat,NomMat) VALUES('ING I','Ingles I') Antes Despues Corrida Regresar
  • 42. 2-. Agregar un nuevo dato a la boleta con un numero de control que sea 25489752 y que este en la especialidadde Administracion. INSERT INTO boleta(NoControl,CveMat,Parcial,CT,CP,RFC) VALUES('25489752','ADMON','5','5','5','AICP560129U54') Antes Despues Corrida Regresar
  • 43. 3-.Insertar un nuevo valor a la tabla boleta que el numero de control sea 125984 y sea de CveMat BIO INSERT INTO boleta(NoControl,CveMat,Parcial,CT,CP,RFC) VALUES('125894','BIO','10','10','10','FRHDU12445HFT33') Antes Despues Corrida Volver
  • 44. 4-.Agregar un nuevo valor a la table materia que sea geografia INSERT INTO materia(CveMat,NomMat) VALUES('ING','Ingles I') Antes Despues Corrrida Regresa
  • 45. 5.-Agregar un nuevo docente que sus datos sean 'MAYR5510566',' Patiño Resendiz Mayra Gisela','12/07/1985','Maestra','Tec.Prog.Analistica','UPG' INSERT INTO docente(RFC,NOMDOC,FECNACDOC,NIVEL,CARRERA,INSTITUCION) VALUES('MAYR5510566',' Patiño Resendiz Mayra Gisela','12/07/1985','Maestra','Tec.Prog.Analistica','UPG') Antes Despues Corrida Volver
  • 47. 7-.Actualizar un alumno que es del grupo C con un nuevo numero de control que sea ‘ 200118852' UPDATE alumno set Grupo='D' WHERE NoControl='200118852' Antes Despues Corrida Regresar
  • 48. 8-.Eliminar el alumno con el numero de control '12344321' DELETE FROM alumno WHERE Nocontrol='12344321' Antes Despues Corrida Volver
  • 49. 9-.Eliminar la columna Nocontrol de la tabla alumno DELETE FROM alumno WHERE Nocontrol='Nocontrol' Antes Despues Corrida Volver
  • 50. 10-.Eliminar la materia de Ingles DELETE FROM materia WHERE CveMat='ING 1' Antes Despues Corrida Regresar
  • 51. 11-.Eliminar la columna CveMat en la tabla materia DELETE FROM materia WHERE CveMat='CveMa' Antes Despues Corrida Volver
  • 52. 13-. Eliminar el numero de control '125894' DELETE FROM boleta WHERE NoControl='125894' Antes Despues Corrida Volver
  • 53. 14-.Eliminar el RFC ‘AICP560129U54' de la tabla boleta DELETE FROM boleta WHERE RFC='AICP560129U54' Antes Despues Corrida Regresar
  • 54. 15-.Eliminar de la tabla docente a' Patiño Resendiz Mayra Gisela' DELETE FROM docente WHERE NOMDOC=' Patiño Resendiz Mayra Gisela' Antes Despues Corrida Volver
  • 55. 16-.Actualizar la tabla docente con un cambio a el RFC del docente 'Contreras Ruiz Nicolas Gerardo' UPDATE docente set RFC ='C45784E44' WHERE NOMDOC ='Contreras Ruiz Nicolas Gerardo' Antes Despues Corrida Volver
  • 56. 17-.Actualizar la tabla alumno el numero de control '2547892' al alumno 'Ramirez Robledo Hiram' UPDATE alumno set NoControl ='2547892' WHERE NomAlu ='Ramirez Robledo Hiram' Antes Despues Corrida Regresa
  • 57. 18-.Actualizar el nombre del docente 'Quintana Aguado Miguel Angel' por 'Quintana Miguel Angel' UPDATE docente set NOMDOC ='Quintana Miguel Angel' WHERE NOMDOC ='Quintana Aguado Miguel Angel' Antes Despues Corrida Volver
  • 58. 19-. Actualizar la tabla boleta el CP que sea 10 donde su numero de control sea '200118852' Antes Despues Corrida Volver
  • 59. 20-.Eliminar de la tabla docente la columna RFC DELETE FROM docente WHERE RFC ='RFC' Antes Despues Corrida Volver
  • 60. 21-.Agregar la especialidad de ofimatica INSERT INTO especialidad (CveEsp,NomEsp) VALUES ('Of59','Ofimatica') Antes Despues Corrida Regresar
  • 61. 22-.Eliminar la especialidad con la CveEsp ‘Of59’ DELETE FROM especialidad WHERE CveEsp='Of59' Antes Despues Corrida Volver
  • 62. 23-.Actualizar la tabla docente el RFC RVOA5872099 con el nombre de docente 'Rosa Velazquez Angelica' UPDATE docente set RFC='RVOA5872099' WHERE NOMDOC='Rosa Velazquez Angelica' Antes Despues Corrida Volver
  • 63. 24-.Actualizar la tabla especialidad en el CveEsp E50 a CveEsp 00 UPDATE especialidad set CveEsp='E00' WHERE CveEsp='E50' Antes Despues Corrida Volver
  • 64. 25-.Eliminar la columna de CveEsp de la tabla especialidad DELETE FROM especialidad WHERE CveEsp='CveEsp' Antes Despues Corrida Volver
  • 67. Entidades y Relacion ER Departamento Empleado Proyecto Id Dept RFC Id Pro Nombre Dirección Nombre Empleado Salario Local Sexo Año Nacimiento Dependencia Local Id Dep Id local Nombre Num Local Sexo Fech Nac Volver
  • 69. Diagrama Entidad Relación Salario Id Dept Nombre RFC Emplea R2 Departamento sexo Nombre direccion R4 Empleado Local R3 R1 Proyectos Nombre NoCurso oo sexo Dependencia Locales Nombre IdDep Id Local Num local FechNac Regresar
  • 74. Querys 1-. Agregar el local Escovedo con un Id de 73496793 en la tabla local. INSERT INTO `local`VALUES ('73496793','Escovedo') Antes Despues Corrida Volver
  • 75. 2.-Agregar el departamento Historia con un Id de 346436. que tenga 9 locales en la tabla departamento INSERT INTO departamento VALUES ('346436','Historia','9') Antes Despues Corrida Volver
  • 76. 3.-Agregar el proyecto JDSF con un Id de 35739352 del local Vásquez en la tabla Proyecto. INSERT INTO proyecto VALUES ('35739352','JDSF','Vasquez') Antes Despues Corrida Regresar
  • 77. 4-. Agregar el empleado Mozqueda Arriaga Veronica con un Id de 52375258, dirección de Hidalgo No.4, fecha de nacimiento de 09/12/1969, de sexo femenino y que tenga de salario 1580 en la tabla empleado. INSERT INTO empleado VALUES ('52375258','Mozqueda Arriaga Veronica','Hidalgo No.4','09/12/1969','F','1580') Antes Despues Corrida Regresar
  • 78. 5.-Eliminar de la table local el local que tenga el Id de 73496793. DELETE FROM `local` WHERE IdLocal='73496793' Antes Despues Corrida Volver
  • 79. 6.-Eliminar de la tabla proyecto el proyecto con el nombre JDSF. DELETE FROM proyecto WHERE NomPoyec='JDSF' Antes Despues Corrida Volver
  • 80. 7.-Eliminar de la tabla empleado el empleado que tenga el salario de 1580. DELETE FROM empleado WHERE Salario='1580' Antes Despues Corrida Regresar
  • 81. 8-. Eliminar de la tabla departamento el departamento que tenga 9 locales. DELETE FROM departamento WHERE Locales='9' Antes Despues Corrida Regresar
  • 82. 9.- Cambiar la relacion de hermanos a primos de la table dependientes. UPDATE dependientes SET Relacion='Primo' WHERE Relacion='Hermano' Antes Despues Corrida Regresar
  • 83. 10-.Cambiar el IdProyecto 3795735 por 72386406 de la tabla proyecto. UPDATE proyecto SET IdProyecto='72386406' WHERE IdProyecto='3795735' Antes Despues Corrida Volver
  • 84. 11-.Cambiar el nombre de local lopez por Hernandez de la tabla local. UPDATE `local` SET NomLocal='Hernandez' WHERE NomLocal='Lopez'. Antes Despues Corrida Volver
  • 85. 12-. Cambiar el salario de 900 por 1150 de la tabla empleado. UPDATE empleado SET Salario='1150' WHERE Salario='900' Antes Despues Corrida Volver
  • 86. 13-. Obtener los empleados que sus nombres empiezan con T. SELECT Nombre FROM empleado WHERE Nombre like 'T%' 14.-Obtener los nombres de los empleados de la table empleado en orden alfabetico. SELECT Nombre FROM empleado ORDER BY Nombre ASC Corrida Regresar
  • 87. 15-. Obtener los Id de proyecto que tengan el número 7 de la tabla proyecto. SELECT DISTINCT IdProyecto FROM proyecto WHERE proyecto.IdProyecto REGEXP BINARY 7 Corrida Volver