Está en la página 1de 6

--CREAR LA TABLA ESTADO

CREATE TABLE Estado


(
idEstado number(3) NOT NULL,
descripcion varchar2(30) NOT NULL,

CONSTRAINT PK_Estado_IdEstado PRIMARY KEY (idEstado)


);

--CREAR LA TABLA CIUDAD

CREATE TABLE Ciudad


(
idCiudad number(3) NOT NULL ,
descripcion varchar2(30) NOT NULL ,
idEstado number(3) NOT NULL,

CONSTRAINT PK_Ciudad_IdCiudad PRIMARY KEY (idCiudad),


CONSTRAINT FK_Ciudad_IdEstado FOREIGN KEY (idEstado)
REFERENCES Estado(IdEstado)
);

--CREAMOS LA TABLA PROVEEDOR

CREATE TABLE Proveedor


(
idProveedor number(3) NOT NULL ,
nombre varchar2(30) NOT NULL ,
calle varchar2(30) NOT NULL ,
numExt char(5) NOT NULL ,
colonia varchar(30) NOT NULL ,
cp char(5) NOT NULL ,
tel char(10) NOT NULL ,
idCiudad number(3) NOT NULL ,

CONSTRAINT PK_Proveedor_IdProveedor PRIMARY KEY (idProveedor),


CONSTRAINT FK_Proveedor_IdCiudad FOREIGN KEY (idCiudad)
REFERENCES Ciudad(idCiudad)
);

-- CREAR LA TABLA PEDIDO

CREATE TABLE Pedido


(
idPedido number(3) NOT NULL ,
fecPed date DEFAULT SYSDATE NOT NULL,
idProveedor number(3) NOT NULL ,

CONSTRAINT PK_Pedido_IdPedido PRIMARY KEY (idPedido),


CONSTRAINT FK_Pedido_IdProveedor FOREIGN KEY (idProveedor)
REFERENCES Proveedor(idProveedor)
);

--CREAR LA TABLA TIPO_PRODUCTO


CREATE TABLE TipoProducto
(
idTipoP number(3) NOT NULL,
descripcion varchar2(30) NOT NULL,

CONSTRAINT PK_TipoProducto_IdTipoP PRIMARY KEY (idTipoP)


);

--CREAR LA TABLA PRODUCTO

CREATE TABLE Producto


(
idProducto number(3) NOT NULL ,
descripcion varchar2(30) NOT NULL ,
precio number(5,2) NOT NULL ,
peso number(5,2) NULL ,
stock number(3) NOT NULL ,
idTipoP number(3) NOT NULL ,

CONSTRAINT PK_Producto_IdProducto PRIMARY KEY (idProducto),


CONSTRAINT FK_Producto_TipoP FOREIGN KEY (idTipoP)
REFERENCES TipoProducto(idTipoP)
);

--CREAR TABLA FACTURA_PEDIDO

CREATE TABLE FacturaPedido


(
idFacPed number(3) NOT NULL ,
stock number(3) NOT NULL ,
fechaHora date DEFAULT SYSDATE NOT NULL,
monto number(5,2) NOT NULL ,
idPedido number(3) NOT NULL ,

CONSTRAINT PK_FacturaPedido_IdFacPed PRIMARY KEY (idFacPed),


CONSTRAINT FK_FacturaPedido_IdPedido FOREIGN KEY (idPedido)
REFERENCES Pedido(idPedido)
);

--CREAR LA TABLA CATEGORIA

CREATE TABLE Categoria


(
idCategoria number(3) NOT NULL ,
descripcion varchar2(30) NOT NULL ,

CONSTRAINT PK_Categoria_IdCategoria PRIMARY KEY (idCategoria)


);

--CREAR LA TABLA PLATILLO


CREATE TABLE Platillo
(
idPlatillo number(3) NOT NULL ,
descripcion varchar2(30) NOT NULL ,
precio number(5, 2) NOT NULL ,
idCategoria number(3) NOT NULL ,

CONSTRAINT PK_Platillo_IdPlatilloPRIMARY KEY (idPlatillo),


CONSTRAINT FK_Platillo_IdCategoria FOREIGN KEY (idCategoria)
REFERENCES Categoria(idCategoria)
);

--CREAR TABLA CANTIDAD

CREATE TABLE Cantidad


(
idCantidad number(3) NOT NULL ,
cantidad number(3) NOT NULL ,
idProducto number(3) NOT NULL ,
idPlatillo number(3) NOT NULL ,

CONSTRAINT PK_Cantidad_IdCantidad PRIMARY KEY (idCantidad),


CONSTRAINT FK_Cantidad_IdProducto FOREIGN KEY (idProducto)
REFERENCES Producto (idProducto),
CONSTRAINT FK_Cantidad_IdPlatillo FOREIGN KEY (idPlatillo)
REFERENCES Platillo (idPlatillo)
);

--CREAR TABLA MESA


CREATE TABLE Mesa
(
idMesa number(3) NOT NULL ,
estatus char(1) DEFAULT 'D' NOT NULL,

CONSTRAINT PK_Mesa_IdMesa PRIMARY KEY (idMesa)


CONSTRAINT CK_Mesa_Estatus CHECK (estatus IN('D', 'O'))
);

-- CREAR LA TABLA CLIENTE

CREATE TABLE Cliente


(
idCliente number(3) NOT NULL ,
nombre varchar2(30) NOT NULL ,
app varchar2(30) NOT NULL ,
apm varchar2(30) NOT NULL ,
calle varchar2(30) NOT NULL ,
numExt char(5) NOT NULL ,
colonia varchar2(30) NOT NULL ,
cp char(5) NOT NULL ,
tel char(10) NOT NULL ,
idCiudad number(3) NOT NULL ,

CONSTRAINT PK_Cliente_IdCliente PRIMARY KEY (idCliente),


CONSTRAINT FK_Cliente_IdCiudad FOREIGN KEY (idCiudad)
REFERENCES Ciudad(idCiudad)
);

--CREAR LA TABLA EMPLEADOS

CREATE TABLE Empleado


(
idEmpleado number(3) NOT NULL ,
nombre varchar2(30) NOT NULL ,
app varchar2(30) NOT NULL ,
apm varchar2(30) NOT NULL ,
calle varchar2(30) NOT NULL ,
numExt char(5) NOT NULL ,
colonia varchar2(30) NOT NULL ,
cp char(5) NOT NULL ,
tel char(10) NOT NULL ,
idCiudad number(3) NOT NULL ,
puesto varchar2(30) NOT NULL ,
seccion varchar2(50) NOT NULL ,
sueldo number(7,2) NOT NULL ,
turno char(1) NOT NULL,

CONSTRAINT PK_Empleado_IdEmpleado PRIMARY KEY (idEmpleado),


CONSTRAINT FK_Cliente_IdCiudad FOREIGN KEY (idCiudad)
REFERENCES Ciudad(idCiudad)
CONSTRAINT CK_Empleado_Turno CHECK (turno IN('M', 'V', 'N'))
);

--CREAR LA TABLA ORDEN

CREATE TABLE ORDEN


(
idOrden number(3) NOT NULL ,
idCliente number(3) NOT NULL,
fecHora date DEFAULT SYSDATE NOT NULL,
idPlatillo number(3) NOT NULL,
idMesa number(3) NULL,
idEmpleado number(3) NOT NULL,

CONSTRAINT PK_Orden_IdOrden PRIMARY KEY (idOrden),


CONSTRAINT FK_Orden_IdCliente FOREIGN KEY (idCliente)
REFERENCES Cliente(idCliente),
CONSTRAINT FK_Orden_IdPlatillo FOREIGN KEY (idPlatillo)
REFERENCES Platillo(idPlatillo),
CONSTRAINT FK_Orden_IdMesa FOREIGN KEY (idMesa)
REFERENCES Mesa(idMesa),
CONSTRAINT FK_Orden_IdEmpleado FOREIGN KEY (idEmpleado)
REFERENCES Empleado(idEmpleado)
);

--CREAR DETALLE ORDEN

CREATE TABLE DetalleOr


idDetalleO number(3) NOT NULL ,
cantidad number(3) NOT NULL ,
observaciones varchar2(50) NULL ,
idOrden number(3) NOT NULL ,
idPlatillo number(3) NOT NULL ,

CONSTRAINT PK_DetalleOr_IdDetalleO PRIMARY KEY (idDetalleO),


CONSTRAINT FK_DetalleOr_IdOrden FOREIGN KEY (idOrden)
REFERENCES Orden (idOrden),
CONSTRAINT FK_DetalleOr_IdPlatillo FOREIGN KEY (idPlatillo)
REFERENCES Platillo (idPlatillo)
);

--CREAR TABLA DETALLE FACTURA


CREATE TABLE DetalleFactura
(
idDetalleF number(3) NOT NULL ,
idPlatillo number(3) NOT NULL,
cantidad number(3) NOT NULL ,
precioUni number(6,2) NOT NULL ,
subtotal number(7,2) NOT NULL ,
total number(7,2) NOT NULL ,
idOrden number(3) NOT NULL ,

CONSTRAINT PK_DetalleFac_IdDetalleF PRIMARY KEY (idDetalleF),


CONSTRAINT FK_DetalleFac_IdPlatillo FOREIGN KEY (idPlatillo)
REFERENCES Platillo(idPlatillo),
CONSTRAINT FK_DetalleFac_IdOrden FOREIGN KEY (idOrden)
REFERENCES ORDEN(idOrden)
);

--CREAR TABLA FORMA DE PAGO

CREATE TABLE FormaPago


(
idFormaP number(1) NOT NULL ,
descripcion varchar2(20) NOT NULL ,

CONSTRAINT PK_FormaPago_IdFormaP PRIMARY KEY (idFormaP)


);

--CREAR TABLA FACTURA

CREATE TABLE Factura


(
idFactura number(3) NOT NULL ,
fecHora date NOT NULL DEFAULT SYSDATE,
total number(5,2) NOT NULL ,
idCliente number(3) NOT NULL ,
idFormaP number(1) NOT NULL ,
idDetalleF number(3) NOT NULL ,

CONSTRAINT PK_Factura_IdFactura PRIMARY KEY (idFactura),


CONSTRAINT FK_Factura_IdCliente FOREIGN KEY (idCliente)
REFERENCES Cliente(idCliente),
CONSTRAINT FK_Factura_IdFormaP FOREIGN KEY (idFormaP)
REFERENCES FormaPago (idFormaP),
CONSTRAINT FK_Factura_IdDetalleF FOREIGN KEY (idDetalleF)
REFERENCES DetalleFac (idDetalleF)
);

--CREAR TABLA RECIBO TARJETA

CREATE TABLE ReciboTarj


(
idRecibo number(3) NOT NULL ,
entBancaria varchar2(30) NOT NULL ,
noCuenta varchar2(30) NOT NULL ,
importe number(7,2) NOT NULL ,
fecRec date DEFAULT SYSDATE NOT NULL,
idFormaP number(1) NOT NULL ,
idFactura number(3) NOT NULL ,
CONSTRAINT PK_ReciboTarj_IdRecibo PRIMARY KEY (idRecibo),
CONSTRAINT FK_ReciboTarj_IdFormaP FOREIGN KEY (idFormaP)
REFERENCES FormaPago (idFormaP),
CONSTRAINT FK_ReciboTarj_IdFactuta FOREIGN KEY (idFactura)
REFERENCES Factura(idFactura)
);

También podría gustarte