Está en la página 1de 2

PRACTICA 2

CREATE DATABASE BIBLIO;


USE BIBLIO;

CREATE TABLE editorial (


clave_edi SMALLINT NOT NULL,
nombr_edi VARCHAR(60),
direc_edi VARCHAR(60),
telef_edi VARCHAR(15),
PRIMARY KEY (clave_edi));

CREATE TABLE libro(


clav_lib INT NOT NULL,
titu_lib VARCHAR(60),
idim_lib VARCHAR(15),
form_lib VARCHAR(15),
clave_edi SMALLINT NOT NULL,
PRIMARY KEY(clav_lib),
KEY(clave_edi),
FOREIGN KEY(clave_edi)
REFERENCES editorial(clave_edi)
ON DELETE NO ACTION
ON UPDATE CASCADE
);

CREATE TABLE tema(


cla_tema SMALLINT NOT NULL PRIMARY KEY,
nomb_tema VARCHAR(40));

CREATE TABLE autor (


clav_autor INT NOT NULL PRIMARY KEY
nomb_autor VARCHAR(60));

CREATE TABLE ejemplar (


clav_ejem INT NOT NULL,
clav_lib INT NOT NULL,
num_ord SMALLINT NOT NULL,
edic SMALLINT,
ubic VARCHAR(15)
cat CHAR,
PRIMARY KEY(clav_ejem),
FOREIGN KEY(clav_lib)
REFERENCES libro(clav_lib)
ON DELETE CASCADE
ON UPDATE CASCADE);

CREATE TABLE socio(


clave_socio INT NOT NULL,
nomb_socio VARCHAR(60),
direc_socio VARCHAR(60),
telef_socio VARCHAR(15),
categoria CHAR,
PRIMARY KEY(clave_socio));

CREATE TABLE prestamo(


clave_socio INT,
clav_ejem INT,
num_ord SMALLINT,
fech_prest DATE NOT NULL,
fech_devol DATE DEFAULT NULL,
notas BLOB,
FOREIGN KEY (clave_socio)
ON DELETE SET NULL
ON UPDATE CASCADE,
FOREIGN KEY(clav_ejem)
REFERENCES ejemplar(clav_ejem)
ON DELETE SET NULL
ON UPDATE CASCADE);

CREATE TABLE trata_sobre(


clave_libro INT NOT NULL,
clav_tema SMALLINT NOT NULL,
FOREIGN KEY(clave_libro)
REFERENCES libro(clav_lib)
ON DELETE CASCADE,
FOREIGN KEY(clav_tema)
ON DELETE CASCADE
ON UPDATE CASCADE,
FOREIGN KEY(clav_autor)
REFERENCE autor(clav_autor)
ON DELETE CASCADE
ON UPDATE CASCADE);

También podría gustarte