Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

insert en mysql e id

Estas en el tema de insert en mysql e id en el foro de Mysql en Foros del Web. bueno sq no se acer algo tengo una base de datos entonses cuando agrego una fila ejemplo: Código: INSERT INTO url (id,autor,html) values ('NULL','bynewbie007','<html></html>') entonses ...
  #1 (permalink)  
Antiguo 05/01/2012, 21:38
 
Fecha de Ingreso: enero-2012
Mensajes: 26
Antigüedad: 12 años, 3 meses
Puntos: 0
Pregunta insert en mysql e id

bueno sq no se acer algo

tengo una base de datos entonses cuando agrego una fila
ejemplo:
Código:
INSERT INTO url (id,autor,html) values ('NULL','bynewbie007','<html></html>')
entonses cada ves que agrego una fila el id aumenta 1

como le puedo hacer para mostrar en un echo el id que se agrego
  #2 (permalink)  
Antiguo 09/01/2012, 03:50
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: insert en mysql e id

Eso es php no mysql ...

Inmediatamente despues de lanzar el insert

echo mysql_insert_id();
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 11/01/2012, 23:10
 
Fecha de Ingreso: abril-2008
Ubicación: Santa Fe, Argentina
Mensajes: 41
Antigüedad: 16 años
Puntos: 14
Respuesta: insert en mysql e id

Se obtiene lanzando una query con la función interna LAST_INSERT_ID()

Tenemos nuestra tabla, le ingresamos 4 registros.

Código MySQL:
Ver original
  1. mysql> describe durr;
  2. +-------+---------+------+-----+---------+----------------+
  3. | Field | Type    | Null | Key | Default | Extra          |
  4. +-------+---------+------+-----+---------+----------------+
  5. | id    | int(11) | NO   | PRI | NULL    | auto_increment |
  6. | campo | int(11) | NO   |     | NULL    |                |
  7. +-------+---------+------+-----+---------+----------------+
  8. 2 rows in set
  9.  
  10.  
  11. mysql> INSERT INTO durr (campo) VALUES (33);
  12. Query OK, 1 row affected
  13.  
  14.  
  15. mysql> INSERT INTO durr (campo) VALUES (17);
  16. Query OK, 1 row affected
  17.  
  18.  
  19. mysql> INSERT INTO durr (campo) VALUES (48);
  20. Query OK, 1 row affected
  21.  
  22.  
  23. mysql> INSERT INTO durr (campo) VALUES (99);
  24. Query OK, 1 row affected

Naturalmente, el último registro insertado debería ser el 4.

Código MySQL:
Ver original
  1. +------------------+
  2. +------------------+
  3. |                4 |
  4. +------------------+
  5. 1 row in set

Comprobamos, campo 99 tiene id 4.

Código MySQL:
Ver original
  1. mysql> SELECT * FROM durr;
  2. +----+-------+
  3. | id | campo |
  4. +----+-------+
  5. |  1 |    33 |
  6. |  2 |    17 |
  7. |  3 |    48 |
  8. |  4 |    99 |
  9. +----+-------+
  10. 4 rows in set

Esto te ahorra los problemas de concurrencia al usar MAX() debido a que es orientado a conexiones, y se puede usar con cualquier API.

Etiquetas: id+columna, insert, mysql+php, url
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:36.