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

campo autonumerico

Estas en el tema de campo autonumerico en el foro de Mysql en Foros del Web. Buenas, me gustaría saber si se puede hacer lo siguiente: Tengo una tabla con el id_persona y el id_mascota como clave: id_persona: CLAVE id_mascota: CLAVE ...
  #1 (permalink)  
Antiguo 22/03/2008, 14:41
 
Fecha de Ingreso: octubre-2007
Mensajes: 394
Antigüedad: 16 años, 5 meses
Puntos: 2
campo autonumerico

Buenas, me gustaría saber si se puede hacer lo siguiente:
Tengo una tabla con el id_persona y el id_mascota como clave:
id_persona: CLAVE
id_mascota: CLAVE me gustaría que fuera autonumerico
...otro campos...

Yo lo que qque quiero es lo siguiente: La primera vez que meta a una persona con su id_mascota, que la BD me detecte que esa persona es nueva y me ponga el id_mascota a 1. Cuando quiera volver a meter un registro de la misma persona, pues que el id_mascota me lo ponga a 2. EJEMPLO:


id_persona id_mascota
"PEPE" 1
"PEPE" 2
"JUAN" 1
"PATXI" 1
"JUAN" 2


Si ven, cada persona puede tener varias mascotas, pero es un engorro, cada vez que le voy a meter una mascota a alguien, tener que mirar cual es su ultimo id_mascota y a continuacion anotar el siguiente numero. No podria ser id_mascota autonumerico?

Un saludo
  #2 (permalink)  
Antiguo 22/03/2008, 21:11
 
Fecha de Ingreso: octubre-2006
Mensajes: 51
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: campo autonumerico

Es con AUTO_INCREMENT

CREATE TABLE ejemplo.incrementos(
id INT NOT NULL AUTO_INCREMENT,
nombre CHAR NOT NULL,
PRIMARY KEY (id)
) engine = innodb

saludos!!
  #3 (permalink)  
Antiguo 22/03/2008, 22:21
Avatar de Adolfiten  
Fecha de Ingreso: enero-2008
Ubicación: Frente a mi monitor...
Mensajes: 572
Antigüedad: 16 años, 3 meses
Puntos: 7
Re: campo autonumerico

Un autonumérico así nomás escribiría para cada insert el anterior + 1. Lo que él pide es que para cada idPersona se genere una cuenta autonumérica en idMascota... no sé si me explico.

Cada persona tiene su "propio" autonumérico cuando se ingresan registros en esa tabla. Mejor descrito que con el ejemplo que puso imposible.
  #4 (permalink)  
Antiguo 22/03/2008, 22:43
 
Fecha de Ingreso: octubre-2006
Mensajes: 51
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: campo autonumerico

si si si tiene razón, merezco un regaño. La verdad ni termine de leer el mensaje, me fui con la finta de las primeras lineas.

Es buena pregunta, dejeme meditarlo un rato.

saludos!!
  #5 (permalink)  
Antiguo 23/03/2008, 02:36
 
Fecha de Ingreso: octubre-2007
Mensajes: 394
Antigüedad: 16 años, 5 meses
Puntos: 2
Re: campo autonumerico

JEEJEJ ok ok meditenlo y si se le ocurre algo me comentan.

Un saludo
  #6 (permalink)  
Antiguo 23/03/2008, 08:09
Avatar de pragone  
Fecha de Ingreso: diciembre-2007
Ubicación: Madrid
Mensajes: 223
Antigüedad: 16 años, 4 meses
Puntos: 2
Re: campo autonumerico

Hmm... pues no lo veo claro... lo único que se me ocurre es lo siguiente:

Para el primer registro de cada persona, directamente ingresar el registro... Esto requiere hacer un SELECT previo.

Para los posteriores podrías hacer algo como
INSERT INTO <nombre de la tabla> (id_persona, id_mascota) SELECT [id_persona], id_mascota + 1 FROM <nombre de la tabla> WHERE id_persona=[id_persona] ORDER BY id_mascota DESC LIMIT 1;
donde [id_persona] lo pones tú en la query.

Pero si de todas formas tienes que lanzar una query para saber si no es el primero... entonces no hay ganancia... Si por el contrario puedes saber cuándo es el primer registro y ahorrarte el select bien.

Espero te sirva.
__________________
pragone
Blog: Desarrollo, comunidad y monetización
Últimos artículos: Tips de Smarty
  #7 (permalink)  
Antiguo 23/03/2008, 11:04
 
Fecha de Ingreso: octubre-2007
Mensajes: 394
Antigüedad: 16 años, 5 meses
Puntos: 2
Re: campo autonumerico

mm vale gracias, tiene buenta pinta. Aun asi, joe con lo util que es lo que yo pido, que mas que mysql no tenga nada implementao para realizarlo

Un saludo y axias por su tiempo,
  #8 (permalink)  
Antiguo 23/03/2008, 14:10
Avatar de Adolfiten  
Fecha de Ingreso: enero-2008
Ubicación: Frente a mi monitor...
Mensajes: 572
Antigüedad: 16 años, 3 meses
Puntos: 7
Re: campo autonumerico

La idea de Pragone no está mal. Me suena a que está bien, resolverlo con un select anidado.
  #9 (permalink)  
Antiguo 24/03/2008, 08:23
 
Fecha de Ingreso: enero-2007
Mensajes: 272
Antigüedad: 17 años, 3 meses
Puntos: 5
Re: campo autonumerico

Hola:

Según el manual, eso se puese perfectamente con un autoincrement y que la tabla sea myisam, para eso hay que declarar la tabla como un campo enumerado.

http://dev.mysql.com/doc/refman/5.0/...increment.html

Si funciona, avisen que nunca lo he usado.

Hasta Luego .-
  #10 (permalink)  
Antiguo 28/03/2008, 14:51
Avatar de pragone  
Fecha de Ingreso: diciembre-2007
Ubicación: Madrid
Mensajes: 223
Antigüedad: 16 años, 4 meses
Puntos: 2
Re: campo autonumerico

lucasarts_18

De verdad... qué bueno que sí exista... Es que si lo que hay es que leer la documentación y listo...

Gracias
__________________
pragone
Blog: Desarrollo, comunidad y monetización
Últimos artículos: Tips de Smarty
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 15:33.