Sunteți pe pagina 1din 14

Universidad de Pamplona

Pamplona - Norte de Santander - Colombia


Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

JORGE ANDRÉS CORZO AFANADOR

PANADERÍA Y PASTELERÍA CON MUCHO GUSTO

DOCENTE: YESID MADRID

ADMINISTRACION DE BASE DE DATOS

FACULTAD DE CIENCIAS ECONÓMICAS Y EMPRESARIALES

UNIVERSIDAD DE PAMPLONA

2019

Formando líderes para la construcción de un nuevo 1


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

PANADERÍA Y PASTELERÍA CON MUCHO GUSTO

El establecimiento se dedica a la producción y venta de sus


productos que pueden ser productos en panadería o pastelería.
Un proveedor especifico le ofrece el total de la materia prima para
la producción. Cada producto se compone de diferentes
materiales (materia prima). Por último, algunos de los clientes que
compran a diario, compran también materia prima a la panadería.

ENTIDADES

Formando líderes para la construcción de un nuevo 2


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

INTERRELACION Y CARDINALIDADES

MODELO ENTIDAD RELACION

Formando líderes para la construcción de un nuevo 3


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

MODELO ENTIDAD RELACION (MER) FINAL

PRINCIPIO DE NORMALIZACIÓN

Formando líderes para la construcción de un nuevo 4


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

MODELO SQL

create table tipoproducto(

tip_nom varchar(50) not null,

tip_car varchar (100) not null,

Formando líderes para la construcción de un nuevo 5


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

tip_cant float4 not null,

primary key(tip_nom)

);

create table producto(

pro_cod varchar(50) not null,

pro_nom varchar(100)not null,

pro_cant float4 not null,

pro_prec money not null,

tip_nom varchar(50),

primary key(pro_cod),

foreign key (tip_nom) references tipoproducto(tip_nom) on update


cascade on delete restrict

);

create table proveedor(

prov_id varchar(50) not null,

prov_nom varchar(100) not null,

prov_edad float4,

prov_emp varchar(100) not null,

primary key(prov_id),

Formando líderes para la construcción de un nuevo 6


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

unique(prov_id)

);

create table materiaprima(

mat_cod varchar(50)not null,

mat_nom varchar(100) not null,

mat_prec money,

mat_fec date not null,

mat_cant float4 not null,

prov_id varchar(50),

pro_cod varchar(50),

primary key(mat_cod),

check(mat_fec<now()),

foreign key (prov_id)references proveedor (prov_id) on update


cascade on delete restrict,

foreign key (pro_cod)references producto (pro_cod) on update


cascade on delete restrict,

unique(mat_prec)

);

create table cliente(

Formando líderes para la construcción de un nuevo 7


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

cli_id varchar(50) not null,

cli_nom varchar(100) not null,

cli_comp money default 1000,

cli_fec date,

primary key(cli_id),

check(cli_fec<now())

);

create table matxcli(

mat_cod varchar(50) not null,

cli_id varchar(50)not null,

primary key(mat_cod,cli_id),

foreign key(mat_cod) references materiaprima(mat_cod)on update


cascade on delete restrict,

foreign key (cli_id) references cliente(cli_id) on update cascade on


delete restrict

);

create table proxcli(

pro_cod varchar(50)not null,

cli_id varchar(50)not null,

Formando líderes para la construcción de un nuevo 8


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

primary key(pro_cod,cli_id),

foreign key(pro_cod)references producto(pro_cod)on update


cascade on delete restrict,

foreign key(cli_id)references cliente(cli_id) on update cascade on


delete restrict

);

insert into tipoproducto(tip_nom,tip_car,tip_cant)values


('panadería','horneado',10);

insert into tipoproducto(tip_nom,tip_car,tip_cant)values


('pastelería','manual',27);

insert into tipoproducto(tip_nom,tip_car,tip_cant)values


('pasteleria','cremoso',14);

insert into
producto(pro_cod,pro_nom,pro_cant,pro_prec,tip_nom)values
(227,'pan arabe',65,3000,'panadería');

insert into
producto(pro_cod,pro_nom,pro_cant,pro_prec,tip_nom)values
(178,'torta de bocadillo',34,7500,'pastelería');

Formando líderes para la construcción de un nuevo 9


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

insert into
producto(pro_cod,pro_nom,pro_cant,pro_prec,tip_nom)values
(16,'hojaldras',18,2500,'panadería');

insert into
producto(pro_cod,pro_nom,pro_cant,pro_prec,tip_nom)values
(4,'torta de fresa',6,26800,'pastelería');

insert into
cliente(cli_id,cli_nom,cli_comp,cli_fec)values(100200,'thomás',650
0,'18/06/18');

insert into
cliente(cli_id,cli_nom,cli_comp,cli_fec)values(100300,'mateo',1250
0,'21/07/18');

insert into
cliente(cli_id,cli_nom,cli_comp,cli_fec)values(100400,'adriana',278
00,'2/08/18');

insert into
cliente(cli_id,cli_nom,cli_comp,cli_fec)values(100500,'rita',13500,'
29/06/18');

insert into
proveedor(prov_id,prov_nom,prov_edad,prov_emp)values(102030
40,'Eduardo',26,'pam s.a');

Formando líderes para la construcción de un nuevo 10


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

insert into materiaprima(mat_cod,


mat_nom,mat_prec,mat_fec,mat_cant,prov_id,pro_cod)values
(001,'huevos',300,'3/07/18',324,10203040,227);

insert into materiaprima(mat_cod,


mat_nom,mat_prec,mat_fec,mat_cant,prov_id,pro_cod)values
(002,'harina',1600,'4/05/18',15,10203040,178);

insert into materiaprima(mat_cod,


mat_nom,mat_prec,mat_fec,mat_cant,prov_id,pro_cod)values
(003,'arequipe',5800,'3/03/18',6,10203040,16);

insert into materiaprima(mat_cod,


mat_nom,mat_prec,mat_fec,mat_cant,prov_id,pro_cod)values
(004,'fresa',3690,'29/09/18',22,10203040,4);

insert into matxcli(mat_cod,cli_id)values(001,100200);

insert into matxcli(mat_cod,cli_id)values(002,100400);

insert into matxcli(mat_cod,cli_id)values(004,100200);

insert into proxcli(pro_cod,cli_id)values(227,100300);

insert into proxcli(pro_cod,cli_id)values(178,100200);

insert into proxcli(pro_cod,cli_id)values(4,100400);

insert into proxcli(pro_cod,cli_id)values(227,100200);

insert into proxcli(pro_cod,cli_id)values(16,100200);

Formando líderes para la construcción de un nuevo 11


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

Extraer de la tabla cliente las compras del año 2018

select *

from cliente

where Extract (year from cli_fec)=2018

Seleccionar toda la tabla cliente

select *

from cliente

Seleccionar de la tabla cliente las fechas de compra entre los


días 20-30 de cada mes del año 2018

where Extract (year from cli_fec)=2018 and Extract(day from


cli_fec) Between 20 and 30

Seleccionar toda la tabla materia prima

select * from materiaprima

ordenar de la tabla materia prima las cantidades

select * from materiaprima order by mat_cant

ordenar de la tabla cliente los nombres de cada uno

Formando líderes para la construcción de un nuevo 12


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

select * from cliente order by cli_nom

Seleccionar de la tabla cliente únicamente el nombre de cada


uno

select distinct (cli_nom) from cliente

Contar de la tabla producto los códigos

select count (pro_cod)

from producto

Mostrar de la tabla cliente el año de la compra excepto en


2017

select *

from cliente

where Extract (year from cli_fec)not in (2017)

Mostrar en la tabla materia prima el orden de las cantidades

select *

from materiaprima order by mat_cant

Mostrar en la tabla materia prima el mínimo precio

select min (mat_prec) from materiaprima

Mostrar en la tabla proveedor id y nom

Formando líderes para la construcción de un nuevo 13


país en paz
Universidad de Pamplona
Pamplona - Norte de Santander - Colombia
Tels: (7) 5685303 - 5685304 - 5685305 - Fax: 5682750 - www.unipamplona.edu.co

select prov_id, prov_nom from proveedor

Borrar en la tabla producto la columna producto-precio

alter table producto drop pro_prec

mostrar toda la tabla producto

select * from producto

mostrar los códigos 178 o 16 en la tabla produto

select pro_cod from producto where pro_cod= '178' or pro_cod=


'16'

seleccionar los nombres de productos con códigos 227 y 4

select pro_nom

from producto

where pro_cod= '227' or pro_cod= '4'

seleccionar los materiales de materia prima

select mat_nom from materiaprima

Formando líderes para la construcción de un nuevo 14


país en paz

S-ar putea să vă placă și