MySQL - clave foránea con autoincremento

   
Vista:

clave foránea con autoincremento

Publicado por Johnny johnnymbc@hotmail.com (1 intervención) el 16/07/2014 00:25:21
Buen día

Quisiera que alguien me ayude con este tema. Tengo dos tablas tblOrdenTrabajo y tblUsuarioOrden. En la tabla tblOrdenTrabajo tengo el campo idOrden de tipo Int como clave primaria, en la otra tabla tengo el campo orden de tipo Int como clave foránea que hace referencia al campo IdOrden de la primera tabla. yo quiero que la clave primaria IdOrden tenga autoincremento pero no me deja ya que me sale error porque hay una clave foránea que hace referencia a ese clave primaria.

Hay alguna manera de que se pueda solucionar eso. o cómo hago para que la clave primaria se vaya incrementando sin utilizer el autoincremento?

gracias de antemano por la colaboración.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

clave foránea con autoincremento

Publicado por xve (898 intervenciones) el 16/07/2014 13:34:12
Hola Johnny, esto que solicitas, la verdad es que es un poco extraño, si es una clave foranea, quiere decir que hace referencia a un id unico de otra tabla, por lo que no puede incrementarse automáticamente, ya que puede darse el caso, de que no exista dicho valor en la tabla origen...

Si quieres que sea auto incremental, indícale que no es una clave foranea, y luego no tendrás ese problema.

Hasta donde yo se, no puede ser una clave foranea auto incremental.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

clave foránea con autoincremento

Publicado por jesus (1 intervención) el 04/09/2014 21:03:33
Si lo que desea es que la fk de la tabla hija sea la clave primaria de la tabla padre puede revisar este link donde se explica algo parecido, no necesariamente es fk, es analizar la combeniencia de que sea fk, con este metodo cuando se insertan varias filas por sentencia insert la función last_insert_id() retorna la id correspondiente a la primera inserción:

link:
http://cambrico.net/30-04-2008/mysql-como-averiguar-el-ultimo-registro-insertado-en-una-tabla
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar