Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Crearemos 5 tablas tablas: Producto, TipoPrecio, Boleta, DetalleBoleta finalmente la tabla de muchos a muchos TipoPrecioXProducto (nota: crear una base de datos llamada Ejemplo antes de empezar).
- --- Ejecutar estas lineas de código primero
- --- Begin
- USE [Ejemplo]
- GO
- CREATE TABLE TipoPrecio
- (
- CodTipoPrecio VARCHAR(4) NOT NULL,
- Descripcion VARCHAR(50) NULL,
- Precio NUMERIC(18,2) NULL,
- )
- CREATE TABLE Boleta
- (
- CodBoleta INT NOT NULL PRIMARY KEY,
- NombreUsuario VARCHAR(50) NULL,
- Fecha DATE NULL,
- Hora TIME(7) NULL,
- Total NUMERIC(18, 2) NULL,
- NombreCliente VARCHAR(50) NULL,
- Estado VARCHAR(1) NULL
- )
- CREATE TABLE DetalleBoleta
- (
- CodBoleta INT NOT NULL FOREIGN KEY REFERENCES Boleta(CodBoleta) ON DELETE cascade,
- CodTipoPrecio VARCHAR(4) FOREIGN KEY REFERENCES TipoPrecio(CodTipoPrecio),
- CodProducto VARCHAR(4)FOREIGN KEY REFERENCES Producto(CodProducto),
- Cantidad NUMERIC(18,2) NULL,
- Precio NUMERIC(18,2) NULL
- )
- CREATE TABLE Producto(
- CodProducto VARCHAR(4) NOT NULL,
- Descripcion VARCHAR(50) NULL,
- CodProveedor INT NULL,
- CostoUnitario NUMERIC(18, 2) NULL,
- Cantidad NUMERIC(18, 2) NULL,
- Estado CHAR(1) NULL,
- Imagen VARCHAR(MAX) NULL,
- PrecioUnitario NUMERIC(18, 2) NULL,
- --- End
- CREATE TABLE TipoPrecioXProducto
- (
- CodUnidadMedida VARCHAR(4),
- CodProducto VARCHAR(4),
- CONSTRAINT Prec_Prod_pk PRIMARY KEY (CodUnidadMedida, CodProducto),
- -- Llave primaria de la tabla Muchos-a-muchos
- CONSTRAINT FK_UnidadMedida
- FOREIGN KEY (CodTipoPrecio) REFERENCES TipoPrecio(CodTipoPrecio),
- CONSTRAINT FK_CodProducto
- FOREIGN KEY (CodProducto) REFERENCES Producto(CodProducto)
- );
- --y como hacer que una tabla tenga de referencia esta
- -- PRIMARY KEY MANY TO MANY
- -- "Dropeamos" la tabla, este es el código innecesario al que me refería, pero si se quiere que DetalleBoleta tenga como llave
- -- foreana la tabla de muchos a muchos se tiene que hacer esto.
- DROP TABLE DetalleBoleta
- CREATE TABLE DetalleBoleta
- (
- CodBoleta INT NOT NULL FOREIGN KEY REFERENCES Boleta(CodBoleta) ON DELETE cascade,
- CodTipoPrecio VARCHAR(4),
- CodProducto VARCHAR(4),
- CONSTRAINT Bol_Prec_Prod_fk FOREIGN KEY (CodTipoPrecio, CodProducto)
- -- El nombre la llave foranea tiene que ser diferente al de la llave primaria de la tabla Muchos-a-Muchos
- REFERENCES Prec_Prod_pk,
- Cantidad NUMERIC(18,2) NULL,
- Precio NUMERIC(18,2) NULL
- )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement