Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Alex_bro en 9 Agosto 2007, 14:00 pm



Título: Como estructurar una DB
Publicado por: Alex_bro en 9 Agosto 2007, 14:00 pm
Buenas,
antes de nada decirles que en esto de las bases de datos soy novato, siempre las evitaba usando txt etc... pero mi duda viene a ser mas administrativa que de tecnica.
Se hacer un sistema de usuarios tipico (en una tabla: id, name, email, permisos), y para la autentificacion y tal va bien, pero ahora el problema esta en que en diversos servicios de mi web requieren aumentar el perfil del usuario pidiendo su web, preferencias sobre la herramienta... y si aumentamos a esto los comentarios que publique... se hace todo un lio, pues aunque todo pueda estar en tablas diferentes con referencia al nombre de usuario, cuando por ejemplo borras el usuario siguen rastros de el en todos lados...
En definitiva... me gustaria saber como organizan las tablas y los datos en la db para algo mas complejo que un simple login.
La idea optima para mi web seria hacer algo similar a lo que hace google con sus registros: pedir datos basicos como el user y pass y luego irse subscribiendo en cada servicio en particular aumentando los datos si se requieren.

No se si habra algun manual sobre la estructuracion de datos... busque pero nada... pero no creo que sea yo el unico con problemas sobre esto  :-[

Saludos y gracias (y perdon por escribir tanto).


Título: Re: Como estructurar una DB
Publicado por: дٳŦ٭ en 10 Agosto 2007, 03:45 am
Busca sobre el comando JOIN ON del MySQL, creeme que te va a hacer la vida muchisímo más fácil.

Suerte


Título: Re: Como estructurar una DB
Publicado por: Alex_bro en 10 Agosto 2007, 21:16 pm
Muchas gracias, he leido unos manuales, y todos me hablan sobre relacionar por ejemplo un nombre a un id cuando se hace un select, es eso?
en ese caso, para por ejemplo borrar un usuario si que tendria que ejecutar un borrado por cada tabla no?
Existe alguna forma de condicionar cuando borre un id, la condicion valga para todas las tablas? (la idea seria que al borrar el usuario se borraran todos sus comentarios etc. para que si alguien vuelve a registrar el mismo nombre no se confundan...)

Gracias y disculpen mi ignorancia.


Título: Re: Como estructurar una DB
Publicado por: yeikos en 10 Agosto 2007, 21:26 pm
Citar
DELETE FROM Usuarios WHERE id = '5'
DELETE FROM Comentario WHERE id_autor = '5'


Título: Re: Como estructurar una DB
Publicado por: дٳŦ٭ en 10 Agosto 2007, 23:25 pm
Muchas gracias, he leido unos manuales, y todos me hablan sobre relacionar por ejemplo un nombre a un id cuando se hace un select, es eso?
en ese caso, para por ejemplo borrar un usuario si que tendria que ejecutar un borrado por cada tabla no?
Existe alguna forma de condicionar cuando borre un id, la condicion valga para todas las tablas? (la idea seria que al borrar el usuario se borraran todos sus comentarios etc. para que si alguien vuelve a registrar el mismo nombre no se confundan...)

Gracias y disculpen mi ignorancia.

Sep, por ejemplo:

Tabla parejas

Id      Nombre     Status civil       Anos
1       1              1                   34
2       2              4                   90
...

Tabla nombres

Id      Nombre            Apellido
1       pepe                Perez
2       Andrea             Lopez

Tabla Status_civil

Id      Desc
1       Casdo
2       Viudo
3       Separado
4       Otra

Ahora solo los unos por medio del Id con un JOIN tabla ON campo.

Suerte