224 lines
9.1 KiB
SQL
224 lines
9.1 KiB
SQL
CREATE TABLE news (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
fecha DATE NOT NULL,
|
|
uid INTEGER,
|
|
asunto VARCHAR(50),
|
|
noticia TEXT,
|
|
PRIMARY KEY (id),
|
|
CONSTRAINT news_users FOREIGN KEY (uid)
|
|
REFERENCES users (id)
|
|
);
|
|
|
|
CREATE TABLE users (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
idg INTEGER,
|
|
nick VARCHAR(15),
|
|
level INTEGER NOT NULL DEFAULT 0,
|
|
ultimaEntrada DATE,
|
|
primeraEntrada DATE,
|
|
pass VARCHAR(15),
|
|
Nombre VARCHAR(15),
|
|
Apellidos VARCHAR(25),
|
|
fechaNacimiento DATETIME,
|
|
calle VARCHAR(30),
|
|
ciudad VARCHAR(15),
|
|
provincia VARCHAR(15),
|
|
nacionalidad VARCHAR(15),
|
|
cp INTEGER,
|
|
telefono VARCHAR(15),
|
|
mobil VARCHAR(15),
|
|
email VARCHAR(50),
|
|
usaCorreo ENUM('Y','N') DEFAULT 'N',
|
|
preguntaSecreta VARCHAR(25),
|
|
respuestaPregunta VARCHAR(25),
|
|
PRIMARY KEY (id),
|
|
CONSTRAINT usuario_controla_grupo FOREIGN KEY
|
|
(idg) REFERENCES grupos (id)
|
|
);
|
|
|
|
CREATE TABLE miniChat (
|
|
id INTEGER,
|
|
fecha DATE,
|
|
hora TIME,
|
|
uid INTEGER DEFAULT 0,
|
|
msg VARCHAR(80),
|
|
CONSTRAINT users_miniChat FOREIGN KEY (uid)
|
|
REFERENCES users (id)
|
|
);
|
|
|
|
CREATE TABLE encuestas (
|
|
id INTEGER NOT NULL,
|
|
fecha DATE,
|
|
validaHasta DATE,
|
|
pregunta VARCHAR(50),
|
|
resp1 VARCHAR(35),
|
|
vresp1 SMALLINT DEFAULT 0,
|
|
resp2 VARCHAR(35),
|
|
vresp2 SMALLINT DEFAULT 0,
|
|
resp3 VARCHAR(35),
|
|
vresp3 SMALLINT DEFAULT 0,
|
|
resp4 VARCHAR(35),
|
|
vresp4 SMALLINT DEFAULT 0,
|
|
uip VARCHAR(15),
|
|
PRIMARY KEY (id)
|
|
);
|
|
|
|
CREATE TABLE useronline (
|
|
hora INTEGER NOT NULL,
|
|
ip VARCHAR(15) NOT NULL,
|
|
uid INTEGER NOT NULL,
|
|
PRIMARY KEY (hora),
|
|
INDEX (ip),
|
|
INDEX (uid),
|
|
CONSTRAINT users_useronline FOREIGN KEY (uid)
|
|
REFERENCES users (id)
|
|
);
|
|
|
|
CREATE TABLE artistas (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
FAlta DATETIME NOT NULL,
|
|
Nombre VARCHAR(15),
|
|
Apellido VARCHAR(40),
|
|
Instrumento VARCHAR(50),
|
|
Foto_mime VARCHAR(50),
|
|
Foto_W INTEGER,
|
|
Foto_H INTEGER,
|
|
Telefono1 VARCHAR(15),
|
|
Telefono2 VARCHAR(15),
|
|
NIF VARCHAR(20),
|
|
Calle VARCHAR(50),
|
|
Localidad VARCHAR(20),
|
|
Provincia VARCHAR(20),
|
|
CP INTEGER,
|
|
url VARCHAR(50),
|
|
e_Mail VARCHAR(30),
|
|
FechaNacimiento DATE,
|
|
comentario TEXT,
|
|
PRIMARY KEY (id),
|
|
INDEX (FAlta)
|
|
);
|
|
|
|
CREATE TABLE grupos (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
ide INTEGER,
|
|
FAlta DATE,
|
|
nombre VARCHAR(50),
|
|
comentario TEXT,
|
|
cache VARCHAR(50),
|
|
equipoSonidoLuces VARCHAR(50),
|
|
estadisticas TINYTEXT,
|
|
croquiMusicos VARCHAR(100),
|
|
sugerenciasGrupo VARCHAR(50),
|
|
contratacion TINYTEXT,
|
|
imagen VARCHAR(50),
|
|
PRIMARY KEY (id),
|
|
CONSTRAINT estilos_grupo FOREIGN KEY (ide)
|
|
REFERENCES estilos (id)
|
|
);
|
|
|
|
CREATE TABLE componentesGrupo (
|
|
idg INTEGER NOT NULL,
|
|
idp INTEGER NOT NULL,
|
|
PRIMARY KEY (idg),
|
|
INDEX (idp),
|
|
CONSTRAINT artistas_componentesGrupo FOREIGN
|
|
KEY (idp) REFERENCES artistas (id)
|
|
);
|
|
|
|
CREATE TABLE estilos (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
parent INTEGER NOT NULL DEFAULT 0,
|
|
titulo VARCHAR(50),
|
|
descr TINYTEXT,
|
|
Foto_mime VARCHAR(50),
|
|
Foto_w SMALLINT,
|
|
Foto_h SMALLINT,
|
|
PRIMARY KEY (id),
|
|
INDEX (parent)
|
|
);
|
|
|
|
CREATE TABLE discos (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
idg INTEGER,
|
|
ide INTEGER,
|
|
FAlta DATE,
|
|
FEdicion DATE,
|
|
ids SMALLINT DEFAULT 3,
|
|
titulo VARCHAR(50),
|
|
pv NUMERIC(6,2),
|
|
comentario TEXT,
|
|
PRIMARY KEY (id),
|
|
CONSTRAINT discos_grupo FOREIGN KEY (idg)
|
|
REFERENCES grupos (id),
|
|
CONSTRAINT estilo_disco FOREIGN KEY (ide)
|
|
REFERENCES estilos (id),
|
|
CONSTRAINT tipo_del_disco FOREIGN KEY (pv)
|
|
REFERENCES TiposDiscos (id)
|
|
);
|
|
|
|
CREATE TABLE extrasDiscos (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
idd INTEGER,
|
|
tipo CHAR DEFAULT 'O',
|
|
id_data INTEGER,
|
|
file VARCHAR(50),
|
|
W INTEGER,
|
|
H INTEGER,
|
|
PRIMARY KEY (id),
|
|
CONSTRAINT extras_de_un_disco FOREIGN KEY
|
|
(idd) REFERENCES discos (id)
|
|
);
|
|
|
|
CREATE TABLE cancionesDisco (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
idd INTEGER,
|
|
posicion SMALLINT NOT NULL,
|
|
duracion TIME,
|
|
titulo VARCHAR(50),
|
|
f_partitura VARCHAR(50),
|
|
f_audio VARCHAR(50),
|
|
f_letra VARCHAR(50),
|
|
INDEX (id),
|
|
INDEX (id, posicion),
|
|
PRIMARY KEY (id),
|
|
CONSTRAINT canciones_del_disco FOREIGN KEY
|
|
(idd) REFERENCES discos (id)
|
|
);
|
|
|
|
CREATE TABLE eventos (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
idg INTEGER NOT NULL,
|
|
FAlta DATE,
|
|
FEvento DATE NOT NULL,
|
|
HEvento TIME,
|
|
Lugar VARCHAR(30),
|
|
Titulo VARCHAR(50),
|
|
Notas TEXT,
|
|
PRIMARY KEY (id),
|
|
INDEX (idg, FEvento),
|
|
CONSTRAINT eventos_grupo FOREIGN KEY (idg)
|
|
REFERENCES grupos (id)
|
|
);
|
|
|
|
CREATE TABLE TiposDiscos (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
pvp NUMERIC(8,2),
|
|
descrCorta VARCHAR(20),
|
|
descrLarga TEXT,
|
|
PRIMARY KEY (id)
|
|
);
|
|
|
|
CREATE TABLE publicidad (
|
|
id INTEGER NOT NULL AUTO_INCREMENT,
|
|
FAlta DATE,
|
|
anunciante VARCHAR(50),
|
|
descr VARCHAR(50),
|
|
url VARCHAR(90),
|
|
tipo CHAR DEFAULT 'H',
|
|
nVistos INTEGER DEFAULT 0,
|
|
nVisitas INTEGER DEFAULT 0,
|
|
filename VARCHAR(30),
|
|
PRIMARY KEY (id)
|
|
);
|
|
|