DBExpress (Delphi2006) y oracle9i
Hola a todos,
Estoy utilizando actualmente Delphi2006 y oracle9i y quisiera comentar algunos problemas que he visto por si son alucinaciones mias o realmente es así.
Primero. Hay reportado un Bug en Borland (Report #29269) el cual he podido comprobar y es que los campos CLOB al hacer applyupdates pierden el último caracter. A día de hoy creo que esto sigue sin resolverse.
Segundo. Anteriomente he trabajado con MySQL y al eliminar un registro mediante clientdataset.delete el registro se eliminaba correctamente aun cuando ese clientdataset estuviera vinculado a un sqlquery que contuviera una sentencia SELECT con INNER.
En el caso de Oracle y al inspeccionar los mensajes con SQLMonitor veo que trata de eliminar el registro utilizando en la clausula WHERE los campos pertenecientes a la segunda tabla relacionada y por consiguiente falla.
Ejemplo.
Tabla clientes:
id_cliente
cliente
id_tipo_cuenta
Tabla tipos_cuenta
id_tipo_cuenta
tipo_cuenta
sqlquery1.sql.text:='SELECT * FROM clientes INNER JOIN tipos_cuenta USING (id_tipo_cuenta)';
Al eliminar veo en SQLMonitor
DELETE clientes WHERE id_cliente=x AND id_tipo_cuenta=y AND tipo_cuenta=z
Error: el campo tipo_cuenta no existe en clientes
¿Alguna idea?
|