[Php-avanzado] Parte de la estructura de la base de datos + Consulta
Leonardo Tadei - Pegasus Tech Supply
leonardot en pegasusnet.com.ar
Lun Ago 31 22:15:47 ART 2009
Hola Javier!
El lun, 31-08-2009 a las 18:35 -0300, NeiKeR escribió:
> El 31 de agosto de 2009 15:55, Leonardo Tadei - Pegasus Tech Supply
> <leonardot en pegasusnet.com.ar> escribió:
>
> > Pediste ver la estructura de la base de datos y mi consulta
> > que envié hace un par de días?
>
>
> La vi y me figura respondida... si no la encontrás,
> reenviámela y te la
> vuelvo a responder (justo este finde hice limpieza de mails
> viejos que
> no archivo :( )
>
>
>
>
>
> Ok, lo envio de nuevo..
>
>
> http://img193.imageshack.us/img193/6752/export.png
> Falta la parte de los usuarios que es la de phpbb.
Ok.
> Pero tengo una duda.. Había dicho iba a tener una gestión de musicos,
> pero pensándolo mejor me parece que va a ser bastante difícil ponerlo
> en la practica. Porque hay muchas bandas y algunos músicos que están
> en varias bandas, talvez tienen apodos, etc.
Bueno, lo de los apodos se soluciona agregando ese campo.
Que un músico pertenezca a varias bandas no es problema: es una
relación uno a muchos (así como una Provincia pertenece a muchas
ciudades)
> Tampoco se me ocurre como podría el usuario seleccionar un músico de
> manera sencilla cuando la cantidad de músicos crezca.
> ¿Se te ocurre alguna manera de solucionarlo?
>
Con un buscar piola se soluciona.
Podría ser algo modernoso con AJAX buscando partes del nombre (tanto en
el nombre como en el apodo) o tipo asistente en el que se pone una parte
del nombre y el resultado de la búsqueda te devuelve lo que coincide
para que elijas (como el alta de un dominio en www.nic.ar)
Create table bands (
id Int UNSIGNED NOT NULL AUTO_INCREMENT,
name Char(100) NOT NULL,
genre Char(100),
ltheme Char(100),
logo Char(20),
syear Year(4),
eyear Year(4),
info Text,
status Int UNSIGNED NOT NULL,
label Char(100),
city Mediumint UNSIGNED NOT NULL,
display Mediumint UNSIGNED BINARY,
UNIQUE (id),
UNIQUE (logo),
Primary Key (id)) ENGINE = MyISAM;
el género no debería estar codificado?
Hay bandas que pertenecen a varios géneros, pero eso es simplemente una
relación uno a muchos....
Create table discs (
id Int UNSIGNED NOT NULL AUTO_INCREMENT,
name Char(100),
date Int UNSIGNED,
type Mediumint UNSIGNED,
tlist Text,
front Char(20),
info Text,
UNIQUE (id),
UNIQUE (front),
Primary Key (id)) ENGINE = MyISAM;
Create table events (
id Int UNSIGNED NOT NULL AUTO_INCREMENT,
place Int UNSIGNED NOT NULL,
day Int UNSIGNED,
hr Int UNSIGNED,
info Text,
img Char(20),
UNIQUE (id),
Primary Key (id)) ENGINE = MyISAM;
Create table places (
id Int UNSIGNED NOT NULL AUTO_INCREMENT,
name Char(100) NOT NULL,
city Mediumint UNSIGNED NOT NULL,
info Text,
gmaps Char(150),
UNIQUE (id),
Primary Key (id)) ENGINE = MyISAM;
Create table bford (
disc_id Int UNSIGNED NOT NULL,
band_id Int UNSIGNED NOT NULL) ENGINE = MyISAM;
Create table citys (
id Mediumint UNSIGNED NOT NULL AUTO_INCREMENT,
dep_id Mediumint UNSIGNED NOT NULL,
name Char(100),
UNIQUE (id),
Primary Key (id)) ENGINE = MyISAM;
Que las ciudades estén en "departamentos" o "partidos" no es algo que
se use en Argentina... pero siendo que los datos los conseguiste, no
tengo objeción en que lo uses como viene.
El plural de "city" es "cities" ;-)
Create table parts (
id Mediumint UNSIGNED NOT NULL AUTO_INCREMENT,
name Char(20),
prov_id Mediumint UNSIGNED NOT NULL,
UNIQUE (id),
UNIQUE (name),
Primary Key (id)) ENGINE = MyISAM;
Create table provs (
id Mediumint UNSIGNED NOT NULL AUTO_INCREMENT,
name Char(20),
UNIQUE (id),
UNIQUE (name),
Primary Key (id)) ENGINE = MyISAM;
Create table bfore (
event Int UNSIGNED NOT NULL,
band Int UNSIGNED NOT NULL) ENGINE = MyISAM;
Create table status (
id Int UNSIGNED NOT NULL AUTO_INCREMENT,
name Char(50) NOT NULL,
UNIQUE (id),
Primary Key (id)) ENGINE = MyISAM;
Salvo el tema de los géneros, lo demás está bien.
Si tenés un buen motivo para que no estén codificados, me lo contás y vemos.
Seguimos!
--
Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key
Más información sobre la lista de distribución Php-avanzado