Proyecto

Solo disponible en BuenasTareas
  • Páginas : 5 (1236 palabras )
  • Descarga(s) : 0
  • Publicado : 6 de octubre de 2010
Leer documento completo
Vista previa del texto
EJEMPLO DE PROCESAMIENTO DE PETICIÓN SQL
1.- Consideremos una base de datos que contiene información correspondiente a una sencilla aplicación de procesamiento de pedidos para una pequeña empresa de distribución. Consta de 05 tablas.
* CLIENTES, que contiene una fila por cada uno de los clientes de la empresa. Sus campos son NUM_CLIE(número de cliente), EMPRESA, REP_CLIENTE(número delrepresentante que atiende al cliente) y LIM_CREDITO(límite de crédito).
* REPVENTAS, que contiene una fila por cada uno de los diez vendedores de la empresa. Sus campos son NUM_EMPL(número de empleado), NOMBRE, EDAD, OFICINA_REP(número de oficina de representación del vendedor), TÍTULO, CONTRATO, DIRECTOR, CUOTA(ventas previstas) y VENTAS(ventas anuales realizadas).
* OFICINAS, que contiene unafila por cada una de las cinco oficinas en las que trabajan los vendedores. Sus campos son OFICINA(número de oficina), CIUDAD, REGION, DIR(número de empleado del director), OBJETIVO(ventas anuales previstas) y VENTAS(ventas anuales realizadas).
* PRODUCTOS, que contiene una fila por cada tipo de producto disponible para la venta. Sus campos son ID_FAB(identificador del fabricante),ID_PRODUCTO(identificador del producto), DESCRIPCION, PRECIO Y EXISTENCIA.
* PEDIDOS, que contiene una fila por cada pedido ordenado por un cliente. Por simplicidad, se supone que cada pedido se refiere a un solo producto. Sus campos son NUM_PEDIDO(número de pedido), FECHA_PEDIDO(fecha del pedido), CLIE(número de cliente), REP(número de empleado del representante), FAB(identificador de fabricante),PRODUCTO(identificador de producto), CANT(cantidad) e IMPORTE.
2.- LENGUAJE SQL PARA CREAR BASE DE DATOS Y TABLAS
CREATE DATABASE PEDIDOS;
CREATE TABLE CLIENTES(
NUM_CLIE INTEGER NOT NULL PRIMARY KEY,
EMPRESA CHAR(20) NOT NULL,
REPCLIE INTEGER,
LIMITE_CREDITO NUMERIC
);

CREATE TABLE REPVENTAS(
NUM_EMPL INTEGER NOT NULL PRIMARY KEY,
NOMBRE CHAR(18) NOT NULL,
EDAD INTEGER,OFICINA_REP INTEGER,
TITULO CHAR(10),
CONTRATO DATETIME NOT NULL,
DIRECTOR INTEGER,
CUOTA NUMERIC,
VENTAS NUMERIC NOT NULL,
);

CREATE TABLE OFICINAS(
OFICINA INTEGER NOT NULL PRIMARY KEY,
CIUDAD CHAR(15) NOT NULL,
REGION CHAR(10) NOT NULL,
DIR INTEGER REFERENCES REPVENTAS (NUM_EMPL),
OBJETIVO DECIMAL,
VENTAS DECIMAL NOT NULL
);

CREATE TABLE PRODUCTOS(
ID_FABCHAR(3) NOT NULL,
ID_PRODUCTO CHAR(5) NOT NULL,
DESCRIPCION CHAR(20) NOT NULL,
PRECIO DECIMAL NOT NULL,
EXISTENCIAS INTEGER NOT NULL,
CONSTRAINT PRODUCTOS_ID_FAB_ID_PRODUCTO PRIMARY KEY (ID_FAB, ID_PRODUCTO)
);
CREATE TABLE PEDIDOS(
NUM_PEDIDO INTEGER NOT NULL PRIMARY KEY,
FECHA_PEDIDO DATETIME NOT NULL,
CLIE INTEGER NOT NULL REFERENCES CLIENTES(NUM_CLIE),
REPINTEGER REFERENCES REPVENTAS (NUM_EMPL),
FAB CHAR(3) NOT NULL,
PRODUCTO CHAR(5) NOT NULL,
CANT INTEGER NOT NULL,
IMPORTE DECIMAL NOT NULL
);
3.- INSERTAR REGISTROS A LAS TABLAS CON LA SENTENCIA INSERT
“La sentecia INSERT se utiliza para agregar registros a las tablas”

INSERT INTO CLIENTES VALUES(2101, 'JONES MFG',106,65000);
INSERT INTO CLIENTES VALUES(2102, 'FIRST. CORP.',101,65000);INSERT INTO CLIENTES VALUES(2103, 'ACME MFG',105,50000);
INSERT INTO CLIENTES VALUES(2105, 'AAA INVESTMENTS',101,45000);
INSERT INTO CLIENTES VALUES(2106, 'FRED LEWIS CORP.',102,65000);
INSERT INTO CLIENTES VALUES(2107, 'ACE INTERNATIONAL',110,35000);
INSERT INTO CLIENTES VALUES(2108, 'HOLM LANDIS',109,55000);
INSERT INTO CLIENTES VALUES(2109, 'CHEN ASSOCIATES',103,25000);
INSERT INTOCLIENTES VALUES(2111, 'JCF INC.',103,50000);
INSERT INTO CLIENTES VALUES(2112, 'ZETACORP',108,50000);
INSERT INTO CLIENTES VALUES(2113, 'IAN SCHMIDT',104,20000);
INSERT INTO CLIENTES VALUES(2114, 'ORION CORP.',102,20000);
INSERT INTO CLIENTES VALUES(2115, 'MASOFT CORP.',101,20000);
INSERT INTO CLIENTES VALUES(2117, 'J. P. SINCLAIR',106,35000);
INSERT INTO CLIENTES VALUES(2118, 'MASOFT...
tracking img