Code:
CREATE TABLE rol (
rol_nombre VARCHAR(20) NOT NULL,
descripcion VARCHAR(64) NULL,
PRIMARY KEY(rol_nombre)
)
TYPE=InnoDB;
CREATE TABLE usuario (
id_usuario VARCHAR(20) NOT NULL,
clave VARCHAR(20) NULL,
nombres VARCHAR(64) NULL,
paterno VARCHAR(32) NULL,
materno VARCHAR(32) NULL,
correo VARCHAR(64) NULL,
direccion VARCHAR(128) NULL,
telefono VARCHAR(32) NULL,
estado CHAR(1) NULL,
PRIMARY KEY(id_usuario)
)
TYPE=InnoDB;
CREATE TABLE categoria (
id_categoria INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nombre VARCHAR(20) NULL,
descripcion VARCHAR(64) NULL,
PRIMARY KEY(id_categoria)
)
TYPE=InnoDB;
CREATE TABLE producto (
id_producto INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
id_categoria INTEGER UNSIGNED NOT NULL,
nombre VARCHAR(20) NULL,
descripcion VARCHAR(64) NULL,
precio DECIMAL NULL,
stock INTEGER UNSIGNED NULL,
importancia INTEGER UNSIGNED NULL,
imagen VARCHAR(20) NULL,
PRIMARY KEY(id_producto),
FOREIGN KEY(id_categoria)
REFERENCES categoria(id_categoria)
ON DELETE NO ACTION
ON UPDATE NO ACTION
)
TYPE=InnoDB;
CREATE TABLE pedido (
id_pedido INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
id_usuario VARCHAR(20) NOT NULL,
fecha DATETIME NULL,
estado CHAR NULL,
PRIMARY KEY(id_pedido, id_usuario),
FOREIGN KEY(id_usuario)
REFERENCES usuario(id_usuario)
ON DELETE NO ACTION
ON UPDATE NO ACTION
)
TYPE=InnoDB;
CREATE TABLE usuario_rol (
rol_nombre VARCHAR(20) NOT NULL,
id_usuario VARCHAR(20) NOT NULL,
FOREIGN KEY(id_usuario)
REFERENCES usuario(id_usuario)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
FOREIGN KEY(rol_nombre)
REFERENCES rol(rol_nombre)
ON DELETE NO ACTION
ON UPDATE NO ACTION
)
TYPE=InnoDB;
CREATE TABLE detalle_pedido (
id_detalle_pedido INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
id_producto INTEGER UNSIGNED NOT NULL,
id_pedido INTEGER UNSIGNED NOT NULL,
id_usuario VARCHAR(20) NOT NULL,
precio DECIMAL NULL,
cantidad INTEGER UNSIGNED NULL,
PRIMARY KEY(id_detalle_pedido, id_producto, id_pedido, id_usuario),
FOREIGN KEY(id_pedido, id_usuario)
REFERENCES pedido(id_pedido, id_usuario)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
FOREIGN KEY(id_producto)
REFERENCES producto(id_producto)
ON DELETE NO ACTION
ON UPDATE NO ACTION
)
TYPE=InnoDB;
Con este script podran visualizar la Base de Datos para de esta forma comenzar en otro post el lado del administrador, en la cual realizaremos lo normal que influye un Mantenimiento (Listar, Editar, Eliminar, Actualizar) y todo con Smarty y ADOdb.
Bookmarks