Delphi - estudiante

 
Vista:

estudiante

Publicado por matiasUTN (2 intervenciones) el 18/08/2006 15:59:09
Amigos: Estoy usando ClientDataSet en modo caché, y quiero agregar un registro mediante un .AppendRecord y obtengo un except "Key Violation". La entidad a la cual quiero agregar records posee 6 claves y está indexada por las mismas en la DB. Ya he probado ingresar los valores a mano en la DB y el motor las acepta sin problemas por lo cual descarto que el except venga del motor y más aun eso ocurre sin llamar al UpdateRecord o sea que sucede en la caché.
Este es el código del lado del cliente:
Los índices son: 12,0,4,4,1,3
El primer registro lo ingresa sin problemas
DM.CDSEntidad.AppendRecord([12,0,4,4,1,3,'tex1']);

El segundo tira el except
DM.CDSEntidad.AppendRecord([12,0,4,4,1,4,'tex2']);

Lo único que encontré de diferente es que el último índice o sea los en el ej los valores 3 y 4 es del tipo ftLageint y los demás son ftInteger pero no creo sea ese el problema.

En el RDBMS:
INSERT INTO Entidad (VALUES(12,0,4,4,1,3,'tex1');
INSERT INTO Entidad (VALUES(12,0,4,4,1,4,'tex1');
Sin problemas.
Alguien tiene alguna idea de lo que puede estar sucediendo? Saludos y gracias desde ya
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