PDA

Ver la Versión Completa : ADOdataset...


The_Avatar
16-08-2007, 13:08:20
Estoy usando los componentes ADO para acceder a una base de datos Oracle. Me he conectado y he trabajado con ellos sin problemas hasta el momento en que he hecho un 'append' en el ADOdataset.
En ese instante me genera un error por estar la clave primaria vacia, cosa a la que no veo mucha logica ya que aun no he hecho post...:eek:
Alguien me podria explicar el motivo por el que hace esto??
En principio y por requerimientos del programa no puedo usar triggers en la BD para generar la clave primaria ni nada por el estilo.
De antemano gracias ^^

oscorm
16-08-2007, 13:23:25
ese comportamiento no es normal en ADO, de hecho, para poder seguirlo y ayudarte un poco más sería bueno expusieses la SQL del TCustomADODataSet para poder evauar con algo de garantía,
un saludo

The_Avatar
16-08-2007, 13:29:42
La SQL en concreto es:

select * from clientes where k_cliente= :codcli
and k_tipocli= :tipocli

BlueSteel
16-08-2007, 15:45:24
pero donde esta el Append ??


puede que tu problema este en el codcli y en tipocli, ya que son variables que no estan bien definidas.. de donde las sacas ????

si son parametros las tienes definidas ???

The_Avatar
16-08-2007, 16:00:26
Veamos... Si no me equivoco la SQL es correcta y los parametros estan bien definidos ya que funciona perfectamente en todos los casos menos en este.
El error que me da es 'error ORA-01400 no se puede insertar un valor NULL en el campo XXXX' ( XXXX=un campo clave )
Intuyo que quizas haya alguna opcion en el ADOdataset que haga que se apliquen los cambios directamente a las tablas de la BD y por ello, al insertar un registro totalmente NULL con append la propia BD peta con este error.
¿Alguien sabria orientarme para que el registro nulo insertado por el append se inserte EN MEMORIA?
Gracias ^^