error al insertar en tabla vinculada

260 views
Skip to first unread message

Arturo estorefacil

unread,
Oct 1, 2007, 12:17:21 PM10/1/07
to eBD Devel
Hola a todos!
mi duda es que no se porque no puedo insertar un registro en una tabla
vinculada (la original esta en SQL SERVER).
Como no es mi primera experiencia con las tablas vinculadas, ya he
cambiado todos los tipos de campos para que concuerden en ambas tablas
(vinculada-original), aun asi no me deja insertar y me sale un error
que no entiendo muy bien:
"DBDriver error [1003] Error executing batch queries on query #1 SQL
Exception : [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]No
se puede insertar un valor explícito en la columna de identidad de la
tabla 'T_BANCOSEMPRESA' cuando IDENTITY_INSERT es OFF"
Si alguien puede comentarme algo sobre el IDENTITY INSERT se lo
agradeceria enormemente,
muchas gracias a todos eBDianos =)

Jose L. Hernandez

unread,
Oct 1, 2007, 12:23:56 PM10/1/07
to ebd-...@googlegroups.com
Hola,

El problema es que estas intentando grabar un valor en un campo definido como Identity (son los autoincremento de SQLServer).
Si lo que quieres es que te coja el siguiente valor disponible, simplemente no pongas ese campo en la query.
Si por el contrario estas intentando insertar un valor concreto en un campo Identity, tienes que activar ese permiso. Prueba ejecutando esto.

<ebd:query ..>
SET IDENTITY_INSERT nombre_tabla ON;
INSERT INTO nombre_tabla (campos) VALUES (valores);
SET IDENTITY_INSERT nombre_tabla OFF;
</ebd:query>

Es importante que ejecutes estas 3 querys a la vez (dentro del mismo tag eBD:QUERY), para que utilicen la misma conexión
del pool de conexiones a la base de datos.

Un saludo
--
Jose L. Hernández
jlher...@oasyssoft.com
Director de Desarrollo eBD
e-business designer
C/ Doctor Trueta 50 - 54. 3
08005 Barcelona
Tel: 902 181 349
Fax: 932 217 303
http://www.oasyssoft.com
2655 Le Jeune Rd. Suite 517
Coral Gables, Miami 33134, U.S.A.
Phone: +1 305 779 4821
Fax:      +1 305 779 4822
 
eBD es un producto Oasyssoft
Este mensaje (así como los archivos adjuntos o los links que contiene) puede contener información privilegiada o confidencial. Si no es usted el destinatario indicado, queda notificado de que la utilización, divulgación y/o copia sin autorización está prohibida en virtud de la legislación vigente. Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma vía y proceda a su destrucción.

This email (and any attachments or hyperlinks within it) may contain information that is confidential, legally privileged or otherwise protected from disclosure. If you are not the intended recipient of this email, you are not entitled to use, disclose, distribute, copy, print, disseminate or rely on this email in any way. If you have received this email in error, please notify the sender immediately by telephone or email and destroy it, and all copies of it.

Sandra Amador

unread,
Oct 2, 2007, 3:05:05 AM10/2/07
to ebd-...@googlegroups.com
Buenos días, la variable IDENTITY_INSERT te indica si puedes escribir en un
campo que es clave-autonumerica. Si estas insertando un valor, en lugar de
dejar que lo calcule el motor SQL, y esta variable esta a OFF, te salta el
error. Deberias o bien modificar la variable, o bien no insertar en el campo
y dejar que lo calcule.
Reply all
Reply to author
Forward
0 new messages