Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Problema con el orden de las inserciones

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Problema con el orden de las inserciones Responder citando

Hola:
Tengo un problema a la hora de hacer inserciones en mi base de datos Interbase. El caso es que para insertar un registro desde Builder abro la tabla con el método open, añado un registro al final con append y ya procedo a insertar los valores. El problema es que en lugar de insertarme en el último registro, me ordena la tabla por la clave primaria (el DNI de una persona). Es decir, si inserto una persona con DNI 88888888 y seguidamente otra con DNI 3333333, me pone primero la que tiene el DNI menor.
No sé como hacer para forzar a que el orden de los registros en la tabla sea el mismo que el de las inserciones, sin que se produzca esa ordenación que comentaba antes.
Si alguien me pudiese echar una mano, estaría muy agradecida puesto que mi aplicación no está funcionando correctamente debido a este problema.
Un saludo
Volver arriba
Mensaje    Asunto: Responder citando

Mira el SGBD está funcionando correctamente, siempre las ordenará por la clave primaria, cuando tu luego la consultas, ya estableceras el orden que a tí te haga falta en cada momento, para más información, te diré que a tí te debe dar igual como el SGBD almacene o no los datos, a ti lo único que debe importarte es que se almacenen y que no haya inconsistencias en los datos, luego a la hora de recuperarlas ya estableceras el orden que tu creas oportuno, comprendes ?

Espero que te haya aclarado un poco el asunto.

Ciao.
_________________
OJO!! Ya tenemos subforo de Bases de Datos!!
Gracias a los admins.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

Mmm, he entendido lo de que el SGBD funciona correctamente (no sabía que las inserciones se ordenaban por la clave primaria de la tabla Embarassed ).
También sé que a la hora de hacer consultas, puedo ordenar la información como yo quiera, más o menos me manejo con eso.
El problema que tengo es que lo que estoy tratando de hacer es asignar números de socio,y para saber cuál es el número que le tengo que dar a un nuevo socio, me posicionaba en el último registro de la tabla y devolvía como número de socio uno más al de ese registro. Y claro, me fallaba por eso de la ordenación por clave primaria, porque si yo introduzco un socio con el DNI 9999999, yel último registro de la tabla siempre va a ser ese y por lo tanto, a la hora de obtener un nuevo número de socio siempre me daría el siguiente al de 9999999.
Bueno, q ya sé que no me he expresado muy claramente, es que es más facil explicarlo de palabra que escribirlo aquí.
De todas maneras, muchas gracias por vuestra atención, el foro es de mucha ayuda.
Un saludo a tod@s Very Happy
Volver arriba
Mensaje    Asunto: Responder citando

Mira puedes usar una TQuery, o TIBQuery para una sentencia SQL parecida a esta:

Código:
SELECT MAX(CODIGO) AS CODIGO
FROM TABLA


Esta consulta te devolverá una unica fila con un campo llamado codigo con el codigo más alto para ese campo, una vez leas este valor le sumas uno y ya está.

Si estás usando Interbase puedes usar generadores, para automatizar el proceso.
_________________
OJO!! Ya tenemos subforo de Bases de Datos!!
Gracias a los admins.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.