lunes, 17 de diciembre de 2012

Creacion de una BD

CREATE TABLE cliente (
    codigo INT(4) UNSIGNED AUTO_INCREMENT,
    DNI VARCHAR(9) UNIQUE,
    nombre VARCHAR(30),
    telefono VARCHAR(9),
    direccion VARCHAR(40),
    PRIMARY KEY(codigo)
);

CREATE TABLE avala (
    codigo_avalador INT(4) UNSIGNED,
    codigo_avalado INT(4) UNSIGNED,
    PRIMARY KEY (codigo_avalador,codigo_avalado),
    FOREIGN KEY (codigo_avalador) REFERENCES cliente(codigo),
    FOREIGN KEY (codigo_avalado) REFERENCES cliente(codigo)
);

CREATE TABLE reservas (
    codigo INT(5) AUTO_INCREMENT,
    codigo_cliente INT(4) UNSIGNED NOT NULL,
    entregado BOOL,
    precio_total DEC(3,2),
    agencia VARCHAR(10),
    PRIMARY KEY(codigo),
    INDEX(codigo_cliente),
    FOREIGN KEY (codigo_cliente) REFERENCES cliente(codigo)
);

CREATE TABLE ficha_reserva (
    codigo_reserva INT(5) PRIMARY KEY,
    inicio DATE,
    fin DATE,
    FOREIGN KEY (codigo_reserva) REFERENCES reservas(codigo)
);

CREATE TABLE coches (
    matricula VARCHAR(7) PRIMARY KEY,
    color VARCHAR(10),
    marca VARCHAR(15),
    modelo VARCHAR(10),
    garaje INT(3)
);

CREATE TABLE incluye (
    codigo_reserva INT(5),
    matricula VARCHAR(7),
    litros_gasolina TINYINT UNSIGNED,
    precio_coche DEC(8,2),
    PRIMARY KEY (codigo_reserva, matricula),
    FOREIGN KEY (codigo_reserva) REFERENCES reservas(codigo),
    FOREIGN KEY (matricula) REFERENCES coches(matricula)
);

No hay comentarios:

Publicar un comentario