Hi,
I am getting this error while i am using oracle as a lookup.
Oracle_Enterprise_10: When checking operator: When binding output interface field "MRATE" to field "MRATE": Implicit conversion from source type "dfloat" to result type "sfloat": Possible range/precision limitation.
Can anybody help
Thanks,
sudhakar
implicit conversion error
Moderators: chulett, rschirm, roy
-
- Participant
- Posts: 85
- Joined: Fri Nov 18, 2005 5:35 am
implicit conversion error
i need to know datastage
Re: implicit conversion error
There is a datatype mismatch. Check whether the metadata is same. dfloat(double) has size of 8 bytes and sfloat(float) has size of 4 bytes. Truncation may occur.sudhakar_viswa wrote:Hi,
I am getting this error while i am using oracle as a lookup.
Oracle_Enterprise_10: When checking operator: When binding output interface field "MRATE" to field "MRATE": Implicit conversion from source type "dfloat" to result type "sfloat": Possible range/precision limitation.
Can anybody help
Thanks,
sudhakar
-
- Participant
- Posts: 85
- Joined: Fri Nov 18, 2005 5:35 am
What does the stage in DataStage show for the datatype and length and what does a describe on the table from your favorite SQL query tool show? There will be a difference.
<a href=http://www.worldcommunitygrid.org/team/ ... TZ9H4CGVP1 target="WCGWin">
</a>
</a>
Hi,
I faced the same problem for fields with float(126) defined in Oracle. The funny thing is that if you check the OSH associated with the job you will see that a conversion is being done from dfloat to sfloat which is shocking since it is not asked for(really cannot comment on how exactly the float is treated by datastage, datastage is not good at handling floats nyways and mostly throws warnings). The problem was obviously resolved when I used a cast function while reading the data from Oracle Enterprise stage using SQL. But I hate the concept of having to write a SQL in a source stage since this kind of debilitates the job from using RCP in case of change in metadata. Nyways.
I faced the same problem for fields with float(126) defined in Oracle. The funny thing is that if you check the OSH associated with the job you will see that a conversion is being done from dfloat to sfloat which is shocking since it is not asked for(really cannot comment on how exactly the float is treated by datastage, datastage is not good at handling floats nyways and mostly throws warnings). The problem was obviously resolved when I used a cast function while reading the data from Oracle Enterprise stage using SQL. But I hate the concept of having to write a SQL in a source stage since this kind of debilitates the job from using RCP in case of change in metadata. Nyways.
It took me fifteen years to discover I had no talent for ETL, but I couldn't give it up because by that time I was too famous.
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact:
Re: implicit conversion error
It's not an error. It's a warning. DataStage is warning you that a number stored as a dfloat may be too large to fit into an sfloat field. If you are confident that the numbers will never be this large, then set up a message handler to demote this warning to informational. Alternately, ensure that the number can be handled as dfloat throughout. This may involve increasing the precision of the column in the Oracle table.sudhakar_viswa wrote:Hi,
I am getting this error while i am using oracle as a lookup.
Oracle_Enterprise_10: When checking operator: When binding output interface field "MRATE" to field "MRATE": Implicit conversion from source type "dfloat" to result type "sfloat": Possible range/precision limitation.
Can anybody help
Thanks,
sudhakar
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
I have this warning as well. In my situation I imported some SQL Server fields, and in DataStage these fields appeared as Float with length of 15 and unspecified precision.
The following warning appears at runtime:
Is this manual updates of float columns in DataStage metadata standard practice when dealing with SQL Server, and you wish to avoid this warning?
Greg
The following warning appears at runtime:
It appears as though the engine thinks that the source is double, even though the import metadata interface chose float. I eliminated this warning by manually changing my DataStage metadata float columns to Double.SQLServerReadStage: When checking operator: When binding output interface field "ASourceTableFloatCol" to field "ASourceTableFloatCol": Implicit conversion; from source type "dfloat" to result type "sfloat": Possible range/precision limitation
Is this manual updates of float columns in DataStage metadata standard practice when dealing with SQL Server, and you wish to avoid this warning?
Greg