You are on page 1of 4

FARMACIA_BD

CREATE TYPE MICLAVE FROM CHAR(6) not null CREATE TYPE MICADENA FROM VARCHAR(30) CREATE TYPE MIMONTO FROM DECIMAL CREATE DATABASE FARMACIABD ON PRIMARY( NAME='FARMACIABD_DAT', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\FARMACIABD_DAT.MDF', SIZE=50MB, MAXSIZE=60MB, FILEGROWTH=10MB ) LOG ON( NAME='FARMACIABD_LOG', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\FARMACIABD_LOG.LDF', SIZE=50MB, MAXSIZE=60MB, FILEGROWTH=10MB )

CREATE TABLE TIPOMEDICINA( COD_TIPO_MED MICLAVE, DESCRIPCION MICADENA CONSTRAINT PK_CODTIPOMED PRIMARY KEY(COD_TIPO_MED) )GO CREATE TABLE ESPECIALIDAD( CODESPEC MICLAVE, DESCRIPCIONESP MICADENA CONSTRAINT PK_CODESP PRIMARY KEY(CODESPEC) ) GO CREATE TABLE MEDICAMENTOS(

CODMEDICAMENTO MICLAVE, DESCRIPCIONMED MICADENA, FECHAFABRICACION DATE, FECHAVENCIMIENTO DATE, PRESENTACION MICADENA, STOCK INT, PRECIOVENTAUNI MIMONTO, PRECIOVENTAPRES MIMONTO, COD_TIPOMED MICLAVE, MARCA MICADENA, COS_ESPE MICLAVE ) GO ALTER TABLE MEDICAMENTO ADD CONSTRAINT PK_MEDICAMENTO PRIMARY KEY (COD_MEDI) ALTER TABLE MEDICAMENTO ADD CONSTRAINT FK_ESPECIALIDAD FOREIGN KEY (CODESPEC) REFERENCES ESPECIALIDAD(CODESPEC) ALTER TABLE MEDICAMENTO ADD CONSTRAINT FK_TIPO_MEDICAMENTO FOREIGN KEY (COD_TIPO_MED) REFERENCES TIPOMEDINA(COD_TIPO_MED) ALTER TABLE MEDICAMENTOS ADD CONSTRAINT CK_MONTO check (MONTO>0) go

CREATE NONCLUSTERED INDEX INX_PRESENT ON MEDICAMENTOS (PRESENTACION)

CREATE TABLE LABORATORIO ( COD_LAB MICLAVE, RAZON_SOCIAL MICADENA, DIRECCION MICADENA, TELEFONO MICLAVE, EMAIL MICADENA NOT NULL, COTACTO MICADENA ) GO ALTER TABLE LABORATORIO ADD CONSTRAINT PK_CODLAB PRIMARY KEY(COD_LAB) CREATE TABLE ORDENCOMPRA( NRO_ORDEN MICLAVE, FECHA_EMISION DATE, SITUACION MICADENA, TOTAL MIMONTO,

NRO_FACTURAPROV MICLAVE ) GO ALTER TABLE ORDEN_COMPRA ADD CONSTRAINT PK_ORDEN_COMPRA PRIMARY KEY (NRO_ORDENC) ALTER TABLE ORDEN_COMPRA ADD CONSTRAINT FK_LABORATORIO FOREIGN KEY (COD_LAB) REFERENCES LABORATORIO(COD_LAB) ALTER TABLE ORDENCOMPRA ADD CONSTRAINT DF_ORDCOMP DEFAULT GETDATE() FOR FECHA_EMISION GO CREATE TABLE ORDENVENTA( NRO_ORDEN_VENTA MICLAVE, FECHA_MISION DATE, MOTIVO MICADENA, SITUCION MICADENA ) GO CREATE CLUSTERED INDEX IDX_MOT ON ORDENVENTA(MOTIVO) CREATE TABLE DETALLEORDENCOMPRA( NRO_ORDENC MICLAVE, COD_MEDI MICLAVE, DESCRIPCION MICADENA, CANTIDAD MICLAVE, PRECIO MIMONTO, MONTOUNI MIMONTO ) GO ALTER TABLE DETALLEORDENCOMPRA ADD CONSTRAINT FK_ORDEN_COMPRA FOREIGN KEY (NRO_ORDEN) REFERENCES ORDEN_COMPRA(NRO_ORDEN) ALTER TABLE DETALLEORDENCOMPRA ADD CONSTRAINT FK_MEDICAMENTO FOREIGN KEY (CODMEDICAMENTO) REFERENCES MEDICAMENTOs (CODMEDICAMENTO)
CREATE TABLE DETALLEORDENVENTA( CODMEDICAMENTO MICLAVE, NRO_ORDEN_VENTA MICLAVE, DESCRIPCION MICADENA, CANTREQUERIDA MICLAVE )

GO
ALTER TABLE DETALLEORDENVENTA ADD CONSTRAINT FK_ORDENVENTA FOREIGN KEY(NRO_ORDEN_VENTA)

CREATE NONCLUSTERED INDEX INDX_FFAB ON MEDICAMENTOS(FECHAFABRICACION) CREATE NONCLUSTERED INDEX INX_TELEF ON LABORATORIO(TELEFONO) CREATE NONCLUSTERED INDEX INX_CONTAC ON LABORATORIO(COTACTO) ALTER TABLE ESPECIALIDAD ADD OBSERVACION VARCHAR(100) ALTER TABLE LABORATORIO ADD PRIORIDAD MICADENA DEFAULT 'Frecuente' ALTER TABLE MEDICAMENTOS DROP COLUMN MARCA ALTER TABLE MEDICAMENTOS ADD COD_LAB MICLAVE ALTER TABLE MEDICAMENTOS ADD CONSTRAINT FK_lab_MEDICAMENTO FOREIGN KEY (COD_LAB) REFERENCES LABORATORIO(COD_LAB) ALTER TABLE LABORATORIO Drop PRIORIDAD ALTER TABLE MEDICAMENTOS DROP CONSTRAINT CK_MONTO ALTER TABLE ORDEN_COMPRA ALTER COLUMN TOTAL DECIMAL(8,2)

You might also like