Insertar ordenadamente en MySQL ?
hola a todos ! tengo un prblema. Yo tengo este codigo que me inserta en una tabla recuperando el id de los usuarios.
int id_u = 0;
ResultSet cdr = bd.obtenerUsuarios(); // listado de todos los usuarios registrados.
// Buscamos el número de identificación del último usuario registrado
// para insertar el nuevo a continuación.
while(cdr.next())
{
id_u = cdr.getInt("idPaciente");
}
id_u++; // El número de identificación del último + 1
Usuario.setId_Usuario(id_u);
// Método de la clase BDUsuarios que inserta de manera directa en la base de datos
System.out.println("Antes del insertar en la BD");
bd.insertarEnUsuarios(Usuario);
Y luego pues simplemente inserto en la BD. El problema es que algunas veces cuando inserto y veo la BD el último que inserte esta de primero en la lista. El id de usuario es correcto siempre es +1 pero esta como primer elemento. Y eso no me permite añadir luego más elementos.
Que puedo hacer ?
Muchas gracias
int id_u = 0;
ResultSet cdr = bd.obtenerUsuarios(); // listado de todos los usuarios registrados.
// Buscamos el número de identificación del último usuario registrado
// para insertar el nuevo a continuación.
while(cdr.next())
{
id_u = cdr.getInt("idPaciente");
}
id_u++; // El número de identificación del último + 1
Usuario.setId_Usuario(id_u);
// Método de la clase BDUsuarios que inserta de manera directa en la base de datos
System.out.println("Antes del insertar en la BD");
bd.insertarEnUsuarios(Usuario);
Y luego pues simplemente inserto en la BD. El problema es que algunas veces cuando inserto y veo la BD el último que inserte esta de primero en la lista. El id de usuario es correcto siempre es +1 pero esta como primer elemento. Y eso no me permite añadir luego más elementos.
Que puedo hacer ?
Muchas gracias
Podes realizarlo de dos formas,
a) Una de ellas es declarar el campo idPaciente como autonumerico (AUTO_INCREMENT), en este caso no necesitaras colocar un valor para este campo, ya que se incrementera al insertar el nuevo registro.
b) Otra es a traves de la siguiente consulta
"SELECT MAX(idPaciente) FROM Paciente"
al valor obtenido le sumas 1, y podes insertar el nuevo registro
saludos
a) Una de ellas es declarar el campo idPaciente como autonumerico (AUTO_INCREMENT), en este caso no necesitaras colocar un valor para este campo, ya que se incrementera al insertar el nuevo registro.
b) Otra es a traves de la siguiente consulta
"SELECT MAX(idPaciente) FROM Paciente"
al valor obtenido le sumas 1, y podes insertar el nuevo registro
saludos
