Ver Mensaje Individual
  #6  
Antiguo 13-05-2008
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
La consulta INSERT debe indicar tantas columnas como valores se dan. Al no especificar columnas, se asume que son todas y por ello es que no coincide el número; tú sólo das valores para tres. Modifica tu consulta así:

Código SQL [-]
insert into datospersonales
(idpersona, nombre, apellido, direccion)
values (0, :nombre, :apellido, :direccion)

Nota que agrego el campo idpersona, porque si no lo haces, el motor insertará un valor NULL y a la segunda inserción te marcará un key violation. Al indicar explícitamente 0 como valor del campo, el motor sabe que deseas poner ahí el valor autonumérico que corresponda.

// Saludos
Responder Con Cita