Sei sulla pagina 1di 3

TALLER DISEÑO DE BASE DE DATOS CORTE 01

Imagen 1. Modelo relacional

1. Abrir pg_admin y crear una base de datos llamada empresa_grupo (ejemplo: empresa_b192 )
2. Ubicarse sobre la nueva base de datos empresa2018 y lanza un “Query Tools” o ventana de comandos.
3. Crear las 7 tablas, con sus tipos de datos, llaves primarias y foráneas.
CREACION DE TABLAS
create table categorias(
cat_id int,
cat_nombre varchar(30),
CONSTRAINT pk_cat_id PRIMARY KEY(cat_id),
);

create table proveedores(


pro_id integer,
pro_nombre varchar(60) NOT NULL,
pro_direccion varchar(70) NOT NULL,
pro_celular varchar(30) NOT NULL,
pro_representante varchar(60) NOT NULL,
CONSTRAINT pk_pro_id PRIMARY KEY(pro_id)
);

create table productos(


prod_id integer,
prod_nombre varchar(40) NOT NULL,
prod_existencias smallint,
prod_precio numeric(10) NOT NULL,
prod_cat_id integer,
prod_pro_id integer
);
--Se colocan los constraint de la tabla productos con alter table
ALTER TABLE productos ADD CONSTRAINT pk_prod_id PRIMARY KEY(prod_id);
ALTER TABLE productos ADD CONSTRAINT fk_prod_cat_id FOREIGN KEY (prod_cat_id) REFERENCES categorias(cat_id);
ALTER TABLE productos ADD CONSTRAINT fk_prod_pro_id FOREIGN KEY (prod_pro_id) REFERENCES proveedores(pro_id);

create table clientes(


cli_cedula varchar(10),
cli_nombre varchar(40) NOT NULL,
cli_direccion varchar(70) NOT NULL,
cli_ciudad varchar(15),
cli_telefono varchar(30),
CONSTRAINT pk_cli_cedula PRIMARY KEY (cli_cedula),
);
Terminar de crear las otras tablas: empleados, pedidos y detalle_pedidos, con sus campos y respectivas llaves (revisar el modelo relacional)

ALTERACIONES DE TABLAS Y CONSTRAINT (Restricciones)


4. Cambiar el nombre del campo pro_celular de la tabla proveedores por: pro_telefono
5. En la tabla categorías crear una restricción para que los valores del campo cat_nombre no se puedan repetir.
6. Con alter table colocar una restricción para que el campo cat_nombre de la tabla categorías no se pueda dejar vacío.
7. Con alter table en la tabla productos cambiar el tipo de dato del campo pro_existencias a tipo integer.
8. En la tabla proveedores cambiar la longitud del campo pro_representante a varchar(80).
9. Eliminar el campo pro_telefono de la tabla proveedores.
10. Con alter table, agregar una restricción a la tabla productos para que el campo pro_existencias no reciba valores negativos.
11. Con alter table, agregar una restricción a la tabla clientes para que el campo cli_ciudad solo reciba los siguientes valores (‘GIRON’, ‘BUCARAMANGA’,
‘PIEDECUESTA’, ‘FLORIDABLANCA’).
12. En la tabla empleados agregar un restricción para que el campo emp_fecha_nac solo reciba valores entre el primer día de 1900 y el día de hoy. (buscar
en internet cuál es la variable en postgres que trae la fecha actual).
13. A la tabla empleados agregarle un campo para conocer el estrato socioeconómico.
14. Al campo creado en el punto 13, colocarle una restricción para que solo acepte valores reales de un estrato en Colombia.
15. En la tabla detalle_pedidos colocarle una restricción al campo det_descuento para que acepte valores coherentes.
16. Colocar una restricción en la tabla pedidos para que el campo ped_fechapedido no acepte fechas superiores a la actual.
17. Eliminar la restricción creada en el punto 12.
18. El campo cli_telefono de la tabla clientes actualmente es varchar cambiarlo por el tipo de dato numeric(15). (buscar en internet cómo se hace)
19. Eliminar las siete tablas creadas con DROP.
20. Eliminar la base de datos.

Potrebbero piacerti anche