Advertisement
daniel199410

Sun Hotel

Feb 13th, 2014
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 3.30 KB | None | 0 0
  1. CREATE TABLE telecomunicaciones(
  2.     nombre VARCHAR(50) PRIMARY KEY,  
  3.     precio DEC(8,2) NOT NULL)
  4. ENGINE=INNODB;
  5.  
  6. CREATE TABLE hotel(
  7.     nombre VARCHAR(50) PRIMARY KEY,  
  8.     direccion VARCHAR(50) NOT NULL,  
  9.     provincia VARCHAR(50) NOT NULL,  
  10.     pais VARCHAR(50) NOT NULL,  
  11.     estrellas INT(1) NOT NULL CHECK (estrellas IN ( 1, 2, 3, 4, 5 ))
  12. )ENGINE=INNODB;
  13.  
  14. CREATE TABLE tipo_habitacion(  
  15.     nombre VARCHAR(50) PRIMARY KEY,  
  16.     precio DEC(11,2) NOT NULL)
  17. ENGINE=INNODB;
  18.  
  19. CREATE TABLE categoria(  
  20.     nombre VARCHAR(50) PRIMARY KEY,  
  21.     suplemento DEC(11,2) NOT NULL)
  22. ENGINE=INNODB;
  23.  
  24. CREATE TABLE tipo_usuario(  
  25.     tipo VARCHAR(50) PRIMARY KEY)
  26. ENGINE=INNODB;
  27.  
  28. CREATE TABLE menu(  
  29.     nombre VARCHAR(50) PRIMARY KEY)
  30. ENGINE=INNODB;
  31.  
  32. CREATE TABLE asociacion_menu(  
  33.     mi_menu VARCHAR(50) NOT NULL,  
  34.     mi_tipo VARCHAR(50) NOT NULL,  
  35.     PRIMARY KEY(mi_menu, mi_tipo),  
  36.     FOREIGN KEY (mi_menu) REFERENCES menu(nombre),
  37.     FOREIGN KEY (mi_tipo) REFERENCES tipo_usuario(tipo)
  38. )ENGINE=INOODB;
  39.  
  40. CREATE TABLE user(
  41.     nombre VARCHAR( 50 ) NOT NULL ,
  42.     p_apellido VARCHAR( 50 ) NOT NULL ,
  43.     s_apellido VARCHAR( 50 ) ,
  44.     telefono VARCHAR( 50 ) NOT NULL ,
  45.     email VARCHAR( 50 ) ,
  46.     dni VARCHAR( 50 ) NOT NULL ,
  47.     direccion VARCHAR( 50 ) ,
  48.     tarjeta VARCHAR( 50 ) NOT NULL ,
  49.     usuario VARCHAR( 50 ) PRIMARY KEY ,
  50.     clave VARCHAR( 50 ) NOT NULL ,
  51.     mi_tipo VARCHAR( 50 ) NOT NULL ,
  52.     FOREIGN KEY ( mi_tipo ) REFERENCES tipo_usuario( tipo )
  53. ) ENGINE = INNODB;
  54.  
  55. CREATE TABLE reserva(  
  56.     codigo VARCHAR(50) PRIMARY KEY,  
  57.     fecha_entrada DATE NOT NULL,  
  58.     fecha_reserva DATE NOT NULL,  
  59.     num_noches INT(1) NOT NULL,  
  60.     estado VARCHAR(20) NOT NULL,  
  61.     num_personas INT(2) NOT NULL,  
  62.     mi_usuario VARCHAR(50) NOT NULL,
  63.     FOREIGN KEY(mi_usuario) REFERENCES user(usuario)
  64. )ENGINE=INNODB;
  65.  
  66. CREATE TABLE habitacion(
  67. numero INT(3) NOT NULL,  
  68.     estado VARCHAR(50) NOT NULL,
  69.     mi_hotel VARCHAR(50) NOT NULL,  
  70.     mi_tipo VARCHAR(50) NOT NULL,  
  71.     mi_categoria VARCHAR(50) NOT NULL,  
  72.     mi_usuario VARCHAR(50),  
  73.     FOREIGN KEY (mi_hotel) REFERENCES  hotel(nombre),  
  74.     FOREIGN KEY (mi_tipo) REFERENCES  tipo_habitacion(nombre),  
  75.     FOREIGN KEY (mi_categoria) REFERENCES  categoria(nombre),  
  76.     FOREIGN KEY (mi_usuario) REFERENCES  user(usuario),  
  77.     PRIMARY KEY(numero, mi_hotel)
  78. )ENGINE=INNODB;
  79.  
  80. CREATE TABLE consumo(
  81.     cantidad INT( 5 ) NOT NULL ,
  82.     mi_servicio VARCHAR( 50 ) NOT NULL ,
  83.     mi_habitacion INT( 3 ) NOT NULL ,
  84.     hotel VARCHAR( 50 ) NOT NULL,
  85.     FOREIGN KEY ( mi_habitacion, hotel ) REFERENCES habitacion( numero, mi_hotel ) ,
  86.     FOREIGN KEY ( mi_servicio ) REFERENCES telecomunicaciones( nombre ) ,
  87.     PRIMARY KEY ( mi_habitacion, hotel, mi_servicio )
  88. ) ENGINE = INNODB;
  89.  
  90. CREATE TABLE bebida(  
  91.     nombre VARCHAR(50) NOT NULL,  
  92.     marca VARCHAR(50) NOT NULL,  
  93.     precio DEC(10,2) NOT NULL,  
  94.     disponibilidad VARCHAR(2) NOT NULL,  
  95.     PRIMARY KEY(nombre, marca)
  96. )ENGINE=INNODB;
  97.  
  98. CREATE TABLE minibar(
  99.     cantidad DEC( 10, 2 ) NOT NULL ,
  100.     mi_nombre VARCHAR( 50 ) NOT NULL ,
  101.     hotel VARCHAR( 50 ) NOT NULL ,
  102.     mi_numero INT( 3 ) NOT NULL ,
  103.     mi_marca VARCHAR( 30 ) NOT NULL ,
  104.     FOREIGN KEY ( hotel, mi_numero ) REFERENCES habitacion( mi_hotel, numero ) ,
  105.     FOREIGN KEY ( mi_nombre, mi_marca ) REFERENCES bebida( nombre, marca ) ,
  106.     PRIMARY KEY ( hotel, mi_numero, mi_nombre, mi_marca )
  107. ) ENGINE = INNODB;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement