Ver Mensaje Individual
  #18 (permalink)  
Antiguo 20/05/2011, 08:11
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Paginar los ides de db si son numeros muy diferentes

Cita:
Iniciado por marcofbb Ver Mensaje
No creo ya que si borras un registro, no te sirve de nada, por ejemplo borras el ID15


La estructura de la tabla con la que vamos a trabajar es la siguiente:

articulos CREATE TABLE `articulos`
(`ArticulosNombre` varchar(40) NOT NULL default '',
`ArticulosPrecio` decimal(10,0) NOT NULL default '0',
`ArticuloID` int(6) NOT NULL auto_increment,
PRIMARY KEY (`ArticuloID`))
TYPE=MyISAM


El Movimiento Navegacional

Para poder implementar los botones navegacionales (adelante, atrás, último, primero) se ha dotado a la tabla Artículos de MySQL de un campo auto_increment para dotar de un identificador único a cada registro.

Para poder realizar los movimientos navegacionales se toma primero el valor del registro actual y se pide el siguiente/anterior/ultimo/primero.

Para, por ejemplo, ver el siguiente registro se ha usado:

SELECT * FROM articulos WHERE ArticuloID > ((_Registro_Actual)) LIMIT 1

Para poder ver el registro siguiente:

SELECT * FROM articulos WHERE ArticuloID > ((_Registro_Actual)) order by ;
ArticuloID Desc LIMIT 1

Fijate la opción LIMIT 1 que hará que sólo nos traiga un registro.

Para poder ir al último es algo más sencillo:

SELECT ArticuloID, ArticulosNombre,ArticulosPrecio FROM articulos Order by ;
ArticuloID DESC Limit 1
La idea es que también al borrar hagas las consultas correspondientes para obtener los IDS posteriores y así no afectas la tabla, todo es parte de la lógica que implementes, recuerda que no hay nada mágico en la programación y tienes que tú como programador, hacer que el programa se comporte como necesitas.