Tema: Sentencia
Ver Mensaje Individual
  #5 (permalink)  
Antiguo 24/02/2013, 09:00
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Sentencia

Cita:
En si por razones de la aplicación esta tabla no tendria una PK
En realidad, según tu descripción:
Cita:
Que plato se vendio mas. Es decir yo hago el registro en una tabla en donde el codigo del plato se puede repetir cuantas veces se venda, y asi poderlo sacar cuando lo necesite. obteniendolo con un rango de Fechas
Sí tienes una PK en esa tabla, solamente que no la has definido...
Desde el momento en que una instancia de plato se vende en un momento dado del tiempo (momento en que ingresa), puedes perfectamente definir una PK como (id_plato, fecha_venta), o bien simplemente creando una sequence, para el caso en que un mismo plato salga dos o más veces en transacciones concurrentes de venta.
Lo que jamás debes hacer (y eso te lo enseñan en la primera clase de Base de Datos I) es crear una tabla sin PK. Eso no se debe hacer jamás, incluso aunque en la aplicación nunca uses para nada esa PK.
Como desarrollador de BBDD, tienes cierta obligación de hacer las cosas bien, aunque luego los programadores hagan cualquier cosa insensata. No te olvides que en ese sentido tu función es proteger los datos, no obedecer a ciegas a los programadores en las fantasías que luego imaginan.
Te lo digo por experiencia.
Uno, como DBA, le da acceso a los datos, a los resultados, a las capacidades de información. Pero al que cortan la cabeza cuando algo sale mal no es al programador... Es al DBA.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)