09/06/2010, 15:38
|
| Moderador criollo | | Fecha de Ingreso: noviembre-2007 Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años Puntos: 2658 | |
Respuesta: Los registros siempre entran al final ?? No existe en los DBMS un "principio" de tabla o "final de tabla" en el sentido estricto, como si la tabla fuese una hoja de Excel.
Las estructuras de las tablas de una base de datos son formas dinámicas cuyo orden físico de almacenamiento está definido por la clave primaria, ya que esta determina el orden que realmente tendrán los registros en la tabla, por una cuestión estrictamente de optimización de las consultas.
Existen dos casos en los que tienes registros en el mismo orden de entrada:
1) Primary Key numérica y autoincremental.
2) Primary key definida como TIMESTAMP, DATETIME o cualquier otro tipo de dato que represente medicion por tiempo de ingreso.
Toda otra forma de PK definida en la tabla, determinará un orden diferente según el criterio de mayor optimización que el diseñador de la base le puso.
Si, por ejemplo, definieses que la PK de la tabla de PERSONA es el documento, entonces será ése el orden de la tabla, pero ese orden no indica cuál persona fue la primera en ser ingresada en ella. Ni siquiera sirve para definir la edad de la persona. Sólo el orden numérico de sus DNI.
¿Se comprende?
Esto se basa en que la identidad de un registro es más importante que el orden de entrada, porque en las consultas siempre el dato que se busca es más importante que cuándo entró.
De todos modos, si esa información te resulta transcendente, siempre tienes la oportunidad de crear un índice UNIQUE, o INDEX que te responda esa pregunta, o bien consultas específicas que respondan lo que se desea saber.
No te olvides que el sentido del SQL es responder a consultas de una forma flexible. No necesitas que la tabla tenga un orden de lectura FIFO para poder obtener la información...
Espero que este acercamiento al tema te sirva.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |