Article View: es.comp.bd.misc
Article #124Re: Ayuda con un diseño de BD
From: newton
Date: Sun, 19 Nov 2006 19:54
Date: Sun, 19 Nov 2006 19:54
114 lines
5687 bytes
5687 bytes
No termino de ver muy clara tu propuesta. A ver que te parece lo que tengo hecho yo: Entidades: ............................. Entidad - Clave - Atributos ------------- --------------------- ----------------------------------------------------------------------------------- Cliente - Id_cliente - Dni, nombre, apellido1, apellido2, direccion, tlf, mv, email Horario - Fecha,Turno - Zona - Id_zona - Descripcion, precio_cubierto Silla - Id_silla - Menu - Num_menu - Descripcion Reserva - Id_reserva - Pagada Interrelaciones: ............................... Interrelacion - Clave - Atributos - Grado ------------------ ----------------------- ------------------------- ----------------- Cliente-Reserva - Id_reserva - Id_cliente* - 1:M Horario-Reserva - Id_reserva - Fecha*,Turno* - 1:M Reserva-Silla - Id_silla - Id_reserva* - 1:M Zona-Silla - Id_silla - Id_zona* - 1:M Menú-Silla - Id_silla - Num_menu* - 1:M --------------------------- Si crees que puedes echarme un cable puedo enviarte por mail el diseño que tengo hecho con el Case Studio, que ahí se ve todo más claro. El planteamiento del problema deja mucho que desear porque lo he hecho yo ;-) Es que es un ejercicio que teniamos que inventarnos. Lo bueno de esto es que si veo que algo se complica lo cambio y listo ;-) Con las entidades y las interrelaciones que te he puesto creo que he encontrado la forma correcta, al menos todas las preguntas que me propuse las he podido sacar mediante consultas a esa base de datos, lo que no se si habrá algún fallo de diseño que haya podido cometer por no saber bien la teoria. Si ves algo gordo y me lo dices te lo agradeceré mucho. Saludos PD: Me han sugerido que ponga el atributo "precio_cubierto" como atributo de la interrelacion Zona-Silla, pero yo lo que veo es que si lo pongo así habrá más redundancia en la BD, ya que cada silla llevaría ese atributo y muchas de ellas con el mismo valor, ya que puede haber 300 sillas pero solo dos zonas, por poner un ejemplo. En cambio si lo dejo en zona, solo se pone una vez y como la silla ya está relacionada con la zona puede obtenerse su precio por cubierto correspondiente. ---- Lex Sparrow ha escrito: > newton nos comentaba un dia en es.comp.bd.misc, y con tan sabias palabras, > nos enseño la luz: > > > > > "Se desea crear una base de datos para la gesti¢n de un restaurante. > > Esta BD contendr un listado de clientes (id, dni, nombre, apellidos, > > direcci¢n, tlf, m¢vil, e-mail), que tendr n la posibilidad de > > reservar mesa. > > > > La reserva puede pagarse antes o despu,s del servicio indistintamente. > > Una reserva puede incluir un men£ predefinido o bien ser una reserva a > > la carta, en cuyo caso cada comensal podr decidir su men£ el momento > > de ejecutar la reserva. Las reservas no se contabilizan por mesas, sino > > por comensales. > > > > Cada d¡a tiene 2 turnos de reserva. Los lugares reservados X d¡a para > > X turno se consideran ocupados para todo el turno. Existe tambi,n la > > posibilidad de reservar mesa en una zona privada del restaurante pero > > su coste por cubierto es algo m s elevado." > > La verdad es que el planteamiento del problema deja mucho que desear ... > allá vamos: > > Las entidades que están mas o menos claras son: > > clientes(id, dni, nombre, apellidos,direcci¢n, tlf, m¢vil, e-mail) > reserva(idreserva,idcliente,iddia,idturno,idTipoMenu) > reservaprivada(idcliente,iddia) > menu() > menucarta(idreserva,plato1,plato2,postre) > > Y luego usa los ids para relacionarlo. Como la exposicion es compleja y > difusa, lo que el profesor busca, casi con toda seguridad, es que haya > varias soluciones, y que se razone la que se elija. Esta que te he dado, es > una de varias, pero lo de las reservas da mucho juego, y se plantear de más > formas. > > > -- > Lex Sparrow > > Pagina sobre gestión de las news: > http://www.pclandia.net/lexsparrow/usenet/ > > Press Play Then Any Key > http://www.pressplaythenanykey.com/ > > FAQ de es.comp.lenguajes.php: > http://www.pclandia.net/escomplenguajesphp
Technical Details
Message-ID:
<1163966072.638233.86910@f16g2000cwb.googlegroups.com>Path:
arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!f16g2000cwb.googlegroups.com!not-for-mailReferences:
<1163884679.213765.322180@m73g2000cwd.googlegroups.com> <Xns988066D56123Dlexsparrow@130.133.1.4>Show Full Headers
Complete Article Headers
X-Google-Thread: 106e2f,f70489fdfa1659a8 X-Google-Attributes: gid106e2f,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!f16g2000cwb.googlegroups.com!not-for-mail From: "newton" <psk.sonido@gmail.com> Newsgroups: es.comp.bd.misc Subject: Re: Ayuda con un diseño de BD Date: 19 Nov 2006 11:54:32 -0800 Organization: http://groups.google.com Lines: 115 Message-ID: <1163966072.638233.86910@f16g2000cwb.googlegroups.com> References: <1163884679.213765.322180@m73g2000cwd.googlegroups.com> <Xns988066D56123Dlexsparrow@130.133.1.4> NNTP-Posting-Host: 88.17.6.139 Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1163966076 32351 127.0.0.1 (19 Nov 2006 19:54:36 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sun, 19 Nov 2006 19:54:36 +0000 (UTC) User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.8.0.8) Gecko/20061025 Firefox/1.5.0.8,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: f16g2000cwb.googlegroups.com; posting-host=88.17.6.139; posting-account=qAEm2A0AAAA8R_hwAMgboOh_xsylXo7p