You can translate the question and the replies:

Data type mapping

Hi, Happy New Year I have been asked to produce a data type mapping from Oracle to Denodo. I can't figure out what happens, for instance to integers: In Oracle an integer would be a Number(38), so -999..(38 9s) to 999... In Denodo the Int data type holds -2147483648 to 2147483647 (-2^31 to 2^31-1) This means that an Oracle integer does not fit into a Denodo integer: is this right? I can't find anywhere a data type mapping that clarifies such issues: do you know if such kind of infos exist somewhere? Thank you in advance Alberto
user
02-01-2019 06:21:07 -0500

3 Answers

I should probably map all integer data types to a Decimal
user
02-01-2019 06:33:16 -0500
Hi, Yes, you are right. As you said, this is because the **“integer”** data type in Oracle is derived from the **number** data type i.e., number(38) but in Denodo the integer data type is based on the** java int data type** where it holds **2^32** bits of data which is less than that of Oracle integer. Since, an Oracle integer does not fit into a Denodo integer, it will fit into **“Decimal”** in Denodo. If I want to get the data type as “integer” in Denodo, I would change the oracle data type to **number(9)**, so that in Denodo this field will be of type “integer”. You can have a look at the [VDP Conformance with Standard SQL](https://community.denodo.com/kb/view/document/VDP%20Conformance%20with%20Standard%20SQL?category=VQL) knowledge base article that contains the information about the equivalent Virtual DataPort data type for SQL data type Hope this helps!
Denodo Team
03-01-2019 07:26:02 -0500
Thanks!
user
03-01-2019 08:04:42 -0500
You must sign in to add an answer. If you do not have an account, you can register here