On 3/22/07, Mark Noten <mar...@se...> wrote:
> Hi Robert,
>
> Thanks for your reply. The queries that were executed are:
>
> update vessel_declarations set changed=0, response_status='ACC',
> child_change=0, transmission_status='TRD' where id=4274;
> update containers set changed=0, response_status='ACC' where
> cuscar_id=4274;
> update cni set changed=0, response_status='ACC' where cuscar_id=4274;
> update gid set changed=0, link_change=0, response_status='ACC' where
> cni_id in (select cni_id from cni where cuscar_id=4274);
>
> I selected them all together and hit the Run SQL button. The auto commit
> option was on.
>
> I ran the below query that is used for the "in (...)" where clause of
> the last update query.
>
> select cni_id from cni where cuscar_id=4274
>
> As expected it gives the error:
>
> Error: java.sql.SQLException: ORA-00904: "CNI_ID": invalid identifier
> , SQL State: 42000, Error Code: 904
>
> So why did the last update query, update 89,867 rows? Can it be an issue
> with the OCI driver of Oracle?
That's definitely a head-scratcher. I don't ever use the OCI drivers.
You may want to try the thin driver and see if you get the same
behavior (maybe not on your production server this time - or at least
in a different schema ;-)
Rob
|