Strange problem with insert and varchar2(1) field with default

nicofari

Member²
Hello,

I am using D7 with DOA 4.0.7.1.
At a customer site (an Oracle RAC 10.2.0.4 enterprise under
Linux) I have this strange problem
A TOracleDataset, used to insert in a table, issues
(seeing from OracleMonitor. I am waiting the Oracle trace file from the customer) this statement:

insert into S_NODES_RESP_TEST
(ID, CT_NODES_ORGANIG, CZ_UTENTI, DT_INIZIO, DT_FINE, FL_RICEVI_WF)
values
(:v1, :v2, :v3, :v4, :v5, :v6)
returning rowid into :doa__rowid

OracleMonitor shows that the variables are:
V1 1
V2 1
V3 1
V4 19/01/2009
V5 21/01/2009
V6 S
DOA__ROWID Null AAAuxZAAjAAAICsAAB

Table S_NODES_RESP_TEST is defined as:
create table S_NODES_RESP_TEST
(
ID NUMBER(10) not null,
CT_NODES_ORGANIG NUMBER(10) not null,
CZ_UTENTI NUMBER(10) not null,
DT_INIZIO DATE default to_date('1/1/1900', 'dd/mm/yyyy') not null,
DT_FINE DATE default to_date('1/1/3000', 'dd/mm/yyyy') not null,
FL_RICEVI_WF VARCHAR2(1) default 'S'
);
alter table S_NODES_RESP_TEST
add constraint PK_S_NODES_RESP_TEST primary key (ID);

The problem is the field "FL_RICEVI_WF".
After the insert above and commit it has null value
instead of 'S' value...
I tried a pl/sql block with same parameters and it works ..
I hope that the Oracle trace file will explain ...
Have you ever seen similar a problem ?
Thanks bye
Nicola
 
This is an Oracle Server bug regarding the "returning rowid" clause. Direct Oracle Access 4.1 works around this bug, so you will need to upgrade to fix this.
 
Hi Marco

Thanks for the quick reply. I've just found on Metalink the reference
to this problem (seems from 10.2.0.2).
I'll definitely consider the upgrade.
Is it free for 407 users ? (sorry I don't remember the policy..)
Thanks
Bye
Nicola
 
Back
Top