· 7 years ago · Jan 04, 2019, 06:26 PM
1drop database if exists dbventaslaravel;
2create database if not exists dbventaslaravel;
3use dbventaslaravel;
4
5CREATE TABLE IF NOT EXISTS categoria(
6 idcategoria INT NOT NULL AUTO_INCREMENT,
7 nombre VARCHAR(50) NOT NULL,
8 descripcion VARCHAR(256) NULL,
9 condicion BOOLEAN NOT NULL,
10 PRIMARY KEY (idcategoria));
11
12 CREATE TABLE IF NOT EXISTS articulo(
13 idarticulo INT NOT NULL AUTO_INCREMENT,
14 idcategoria INT NOT NULL,
15 codigo VARCHAR(50) NULL,
16 nombre VARCHAR(100) NOT NULL,
17 stock INT NOT NULL,
18 descripcion VARCHAR(512) NULL,
19 imagen VARCHAR(50) NULL,
20 estado VARCHAR(20) NOT NULL,
21 PRIMARY KEY (idarticulo),
22 CONSTRAINT fk_articulo_categoria
23 FOREIGN KEY (`idcategoria`)
24 REFERENCES categoria(idcategoria));
25
26 CREATE TABLE IF NOT EXISTS persona(
27 idpersona INT NOT NULL AUTO_INCREMENT,
28 tipo_persona VARCHAR(20) NOT NULL,
29 nombre VARCHAR(100) NOT NULL,
30 tipo_documento VARCHAR(20) NULL,
31 num_documento VARCHAR(15) NULL,
32 direccion VARCHAR(70) NULL,
33 telefono VARCHAR(15) NULL,
34 email VARCHAR(50) NULL,
35 PRIMARY KEY (idpersona));
36
37 CREATE TABLE IF NOT EXISTS ingreso(
38 idingreso INT NOT NULL AUTO_INCREMENT,
39 idproveedor INT NOT NULL,
40 tipo_comprobante VARCHAR(20) NOT NULL,
41 serie_comprobante VARCHAR(7) NULL,
42 num_comprobante VARCHAR(10) NOT NULL,
43 fecha_hora DATETIME NOT NULL,
44 impuesto DECIMAL(4,2) NOT NULL,
45 estado VARCHAR(20) NOT NULL,
46 PRIMARY KEY (idingreso),
47 CONSTRAINT fk_ingreso_persona
48 FOREIGN KEY (idproveedor)
49 REFERENCES persona(idpersona));
50
51 CREATE TABLE IF NOT EXISTS detalle_ingreso(
52 iddetalle_ingreso INT NOT NULL AUTO_INCREMENT,
53 idingreso INT NOT NULL,
54 idarticulo INT NOT NULL,
55 cantidad INT NOT NULL,
56 precio_compra DECIMAL(11,2) NOT NULL,
57 precio_venta DECIMAL(11,2) NOT NULL,
58 PRIMARY KEY (iddetalle_ingreso),
59 CONSTRAINT fk_detalle_ingreso_ingreso
60 FOREIGN KEY (idingreso)
61 REFERENCES ingreso(idingreso),
62 CONSTRAINT fk_detalle_ingreso_articulo
63 FOREIGN KEY (idarticulo)
64 REFERENCES articulo(idarticulo));
65
66 CREATE TABLE IF NOT EXISTS venta(
67 idventa INT NOT NULL AUTO_INCREMENT,
68 idcliente INT NOT NULL,
69 tipo_comprobante VARCHAR(20) NOT NULL,
70 serie_comprobante VARCHAR(7) NOT NULL,
71 num_comprobante VARCHAR(10) NOT NULL,
72 fecha_hora DATETIME NOT NULL,
73 impuesto DECIMAL(4,2) NOT NULL,
74 total_venta DECIMAL(11,2) NOT NULL,
75 estado VARCHAR(20) NOT NULL,
76 PRIMARY KEY (idventa),
77 CONSTRAINT fk_venta_cliente
78 FOREIGN KEY (idcliente)
79 REFERENCES persona(idpersona));
80
81
82 CREATE TABLE IF NOT EXISTS detalle_venta(
83 iddetalle_venta INT NOT NULL AUTO_INCREMENT,
84 idventa INT NOT NULL,
85 idarticulo INT NOT NULL,
86 cantidad INT NOT NULL,
87 precio_venta DECIMAL(11,2) NOT NULL,
88 descuento DECIMAL(11,2) NOT NULL,
89 PRIMARY KEY (iddetalle_venta),
90 CONSTRAINT fk_detalle_venta_articulo
91 FOREIGN KEY (idarticulo)
92 REFERENCES articulo(idarticulo),
93 CONSTRAINT fk_detalle_venta_venta
94 FOREIGN KEY (idventa)
95 REFERENCES venta(idventa));