🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.bd.misc
Article #124

Re: Ayuda con un diseño de BD

#124
From: newton
Date: Sun, 19 Nov 2006 19:54
114 lines
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-mail
References: <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