Hi,
I'm testing datatype compatibility provide by MDEV-10343 and I have some 
comments:
1) Oracle character datatype (char, varchar, varchar2) doesn't accept a length 
of 0 char
Example :
        select cast('tt' as char(0)) from dual;
        ORA-01723: zero-length columns are not allowed
MariaDB return an empty string (to relate with MDEV-10574)
This point is a study case, no matter.

2) NUMBER Type
You have choosing TYPE_DOUBLE if scale/prec is not specified and I think that 
it's a mistake for 2 reasons:
- Oracle NUMBER() is near an "exact" datatype and cannot be replace by a 
standard double.
- Convert number to char never use scientific notation 

The use of a decimal(64,24) makes it possible to obtain results very close to 
those of oracle.
I attach two files to show this.

In fact FLOAT and INTEGER are  subtype of NUMBER for Oracle.
MariaDB float and double seems to be like BINARY_FLOAT and BINARY_DOUBLE.

See https://docs.oracle.com/cd/B28359_01/server.111/b28285/sqlqr06.htm#CHDBBHHE 
for more details.

Best regard,
Jérôme.


Attachment: func_ctl_numeric_ORA.SQL
Description: func_ctl_numeric_ORA.SQL

Attachment: func_ctl_numeric.sql
Description: func_ctl_numeric.sql

_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to     : maria-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to