Ver Mensaje Individual
  #1  
Antiguo 15-09-2006
Migmam2 Migmam2 is offline
Miembro
 
Registrado: jul 2006
Posts: 18
Reputación: 0
Migmam2 Va por buen camino
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?
Responder Con Cita