Sabeis de algun programa para poder dibujar el diagrama para el diseño de una base de datos rollo este
http://www.mysql-hispano.org/page.php?id=27&pag=9
Un Saludo
Sabeis de algun programa para poder dibujar el diagrama para el diseño de una base de datos rollo este
http://www.mysql-hispano.org/page.php?id=27&pag=9
Un Saludo
Antes de poner el post me instale todos los q habeis puesto :S No se me pondre con el case o el smartdraw que parecen bastante potentes
Muchas Gracias
He creado este diagrama de Base de datos a ver si veis algun fallito
http://img234.echo.cx/my.php?image=1238sf.jpg
os cuento kiero q la web tengo usuarios, noticias y comentarios, ademas tmb kiero que se puedan crear grupos que puedan crear diferentes carpetas con albumes de imagenes
Creeis q sobra algun campo o falta alguno??
Un Saludo
En Mv cuando posteas... si vuelve a postear la misma persona la BD no se actualiza :S
Nu se a ver si alguien consigue leer el post anterior
Un Saludo
Bueno, me puedo cebar verdad? xDDD
asi a vote pronto que hacen los nombres de tablas en plural?? los nombres de las tablas van en singular.
Porque tener 3 tablas y otras 3??
no seria mejor una BD con 3 tablas relacionadas y otra con otras 3??
a ver... la relación entre Usuarios, noticias y comentario deberia ser:
En que se diferencian exactamente las noticias y los comentarios? (preguntatelo y piensa la respuesta)
Para mi, lo único que diferencia Noticia y comentario es el titulo.
Aqui va de coña una REGLA DE NEGOCIO, si lo que quiero PUBLICAR es una noticia, escribir un titulo es obligatorio. Pon el atributo titulo como no MANDATORIO en COMENTARIO.
Otra sugerencia, Relaja las relaciones 1 a muchos por el lado del muchos, no vaya a ser que no puedas crear un USUARIO poque NO TIENE NADA PUBLICADO, y no PUEDAS PUBLICAR PORQUE NO TIENES USUARIO.
USUARIO ---> PLUBLICAR ---> COMENTARIO
Publicar es una TABLA DEBIL, que tiene como atributos:
fecha Date.
Bueno si me explicas el transfondo del problema, es decir Un texto explicativo, te propongo una solución y te la explico.
Saludos
Weno a ver si de esta aprendo algo.
Yo kiero hacer una web q contenga albumes de fotos de mis amigos (rollo Grupos MSN), esos "grupos" a la vez podran tener varias carpetas internas, ademas tmb kiero meter algun manual, tmb kiero poder insertar noticias y enlaces, para todo eso necesito usuarios
No se que mas puedo explicar
He diseñado esto en 1 dia yo no se BD's :S Intento aprender y me he estado leyendo algunos manuales.
Se benevolo conmigo
Un Saludo
El tema del usuario iba a crear un Invitado para que tmb pueda publicar comentarios.
Lo de las BD no se como separarlas no se donde esta bien hecha una posible division
1º- La tabla noticias y la tabla comentarios es la misma, salvo por el pequeño detalle de puedes incluir un campo que las distingas. Además supongo que a los comentarios también se les pueden poner títulos, (ejm. MV)
2º- En la tabla imágenes te sobra la FK id_grupo, puesto que esto es redundante. Puedes averiguar el grupo mediante la tabla Carpetas
3º- Me imagino que los grupos estarán formados por usuarios, a si que te falta una relación entre las dos tablas.
Suerte.
Mira he estado mirandolo un poco y me sale esto:
http://personales.ya.com/daniri7/bd.JPG
pero no esta completo, ya que, los COMENTARIOs se PUBLICAN por un USUARIO... (pero falta algo) DONDE??? en el Aire?? :S
xDD bueno ya me diras algo
pd: Modelo Conceptual (NO FISICO)
Que programita es ese ?? Parece mas facil q el Case 2 que tiene mucho rollo :S
Esta noche intentare aunar todos los conocimientos y poner un diseño final de la BD a ver que es lo que sale...
Un Saludo
Muchas Gracias por el esfuerzo
No entiedo el Publicar si es otra tabla y cual es la relacion con usuario y comentario....
Atsumi, ¿por que pones la tabla publicar?, no lo pillo.
La hora pertenece el artículo/noticia salvo que tu le des un sentido diferente que se me escapa.
Otra cosa, yo colocaría la tabla intermedia usuario-grupo, hace que quede más claro el diagrama
Weno aki esta el diseño que he hecho con esto :S
http://img251.imageshack.us/my.php?image=db1jl.jpg
A codigo es esto
Create table Usuario (
nick Char(20) NOT NULL,
password Char(20),
UNIQUE (nick),
Primary Key (nick)
) ENGINE = InnoDB;
Create table NoticiaComentario (
identificador Int NOT NULL AUTO_INCREMENT,
nick Char(20) NOT NULL,
titulo Char(100),
cuerpo Text NOT NULL,
fecha Date,
Primary Key (identificador,nick),
Index IX_publica (nick),
Foreign Key (nick) references Usuario (nick) on delete cascade on update cascade
) ENGINE = InnoDB;
Create table Grupo (
idGrupo Int NOT NULL AUTO_INCREMENT,
nombre Char(30) NOT NULL,
descripcion Char(100),
UNIQUE (idGrupo),
UNIQUE (nombre),
Primary Key (idGrupo)
) ENGINE = InnoDB;
Create table Carperta (
idCarpeta Int NOT NULL AUTO_INCREMENT,
idGrupo Int NOT NULL,
nombre Char(20),
descripcion Char(255),
UNIQUE (idCarpeta),
Primary Key (idCarpeta,idGrupo),
Foreign Key (idGrupo) references Grupo (idGrupo) on delete cascade on update cascade
) ENGINE = InnoDB;
Create table Imagen (
id_imagen Int UNSIGNED NOT NULL AUTO_INCREMENT,
idCarpeta Int NOT NULL,
descripcion Char(255),
Primary Key (id_imagen,idCarpeta),
Foreign Key (idCarpeta) references Carperta (idCarpeta) on delete cascade on update cascade
) ENGINE = InnoDB;
Create table UsuarioGrupo (
nick Char(20) NOT NULL,
idGrupo Int NOT NULL,
Primary Key (nick,idGrupo),
Foreign Key (nick) references Usuario (nick) on delete cascade on update cascade,
Foreign Key (idGrupo) references Grupo (idGrupo) on delete cascade on update cascade
) ENGINE = InnoDB;
No se yo exactamente xq se me definen tantas primary keys pero weno entiendo que se van heredando
Weno a ver que me comentais
Un Saludo
Que coño es el Index IX_publica (nick), ¿?¿?¿?¿?¿ En la tabala NoticiaComentario