Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > Mysql

Respuesta
 
Herramientas Desplegado
Antiguo 11-jul-2006, 09:09   #1 (permalink)
juampi está en el buen camino
 
Fecha de Ingreso: noviembre-2002
Ubicación: Argentina
Mensajes: 132
proximo autonumerico....

Hola alguien conoce alguna query para saber el proximo autonumerico de una tabla.....pero tiene que ser exacto....

no me sirve

select (max(codigo) + 1) from usuario


saludos
__________________
Jp
juampi está desconectado   Responder Citando
Antiguo 17-ago-2008, 23:47   #2 (permalink)
Natanzuelo ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2008
Mensajes: 18
Respuesta: proximo autonumerico....

Hola, espero que te sirva:
http://enphp.com.ar/?p=13
Natanzuelo está desconectado   Responder Citando
Antiguo 18-ago-2008, 08:12   #3 (permalink)
gnzsoloyo tiene algunos puntos positivos de karma
 
Avatar de gnzsoloyo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 811
Respuesta: proximo autonumerico....

La forma más simple es consultar a la tabla donde se almacena esa información:
Código:
SELECT AUTO_INCREMENT 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_NAME = 'nombredelatabla';
Ese campo de esa tabla guarda el próximo valore (no el presente) que tomará el autonumérico.
Obviamente esto funciona si y sólo si tienes permiso de lectura para la base de datos INFORMATION_SCHEMA.
__________________
¿Quién de sus aciertos aprende?, si yo aprendo de mis errores constantemente...
gnzsoloyo está desconectado   Responder Citando
Antiguo 19-ago-2008, 09:31   #4 (permalink)
import fdw.mod.py
alvlin es realmente agradablealvlin es realmente agradablealvlin es realmente agradablealvlin es realmente agradablealvlin es realmente agradablealvlin es realmente agradable
 
Avatar de alvlin
 
Fecha de Ingreso: julio-2005
Ubicación: Rodeado de indios... por suerte son amigos :)
Mensajes: 4.050
Enviar un mensaje por MSN a alvlin Enviar un mensaje por Yahoo  a alvlin Enviar un mensaje por Skype™ a alvlin
Respuesta: proximo autonumerico....

También sirve

SHOW TABLE STATUS LIKE 'nombredelatabla'

luego habrá un campo Auto_increment en la fila devuelta.

Me gustaría saber cual método es más eficiente...


Saludos.
__________________
Mi Blog

"Por ahora casi nadie me trata de subnormal sin que a los 4 segundos se arrepienta. Porque yo a mis semejantes quiero a todos por igual: en cubitos de 40x40"
alvlin está desconectado   Responder Citando
Antiguo 19-ago-2008, 09:40   #5 (permalink)
gnzsoloyo tiene algunos puntos positivos de karma
 
Avatar de gnzsoloyo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 811
Respuesta: proximo autonumerico....

Código:
SELECT AUTO_INCREMENT 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_NAME = 'nombredelatabla';
Porque no requiere leer un campo específico de la tabla devuelta por SHOW TABLE STATUS...

El hecho que te devuelva un valor directo es muy útil si programas, por ejemplo, en .Net, donde se puede usar el método ExecuteScalar() para poner el valor directamente en una variable, sin necesidad de ninguna lectura adicional.
Obviamente es más eficiente si conoces el nombre de las tablas en cuestión, y no debes usar LIKE.
__________________
¿Quién de sus aciertos aprende?, si yo aprendo de mis errores constantemente...
gnzsoloyo está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 02:15.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93