Details
-
Bug
-
Status: Stalled (View Workflow)
-
Minor
-
Resolution: Unresolved
-
10.0
-
None
-
10.0.20-MariaDB-log
RedHat Linux
Oracle Enterprise Edition 11.2.0.4
Description
From MariaDB inserting into Oracle table using linked table.
No matter what, Oracle thinks source table in MariaDB has one more character than target in Oracle. Details below:
Oracle:
drop table simple; |
create table simple (col1 varchar2(5), col2 number); |
insert into simple values ('A', 199); |
select * from simple; |
commit; |
MariaDB:
describe simple_link
|
--------------
|
|
Field Type Null Key Default Extra |
COL1 varchar(5) YES NULL |
COL2 double(40,0) YES NULL |
|
ERROR 1296 (HY000) at line 5 in file: 'simple.sql': Got error 122 'SQLExecute: [unixODBC][Oracle][ODBC][Ora]ORA-12899: value too large for column "SOE"."SIMPLE"."COL1" (actual: 6, maximum: 5) |
' from CONNECT |
Fixed by redefining table simple in Oracle to length of 6:
create table simple (col1 varchar2(6), col2 number);
Able to insert from MariaDB to Oracle.
--------------
|
select * from simple_link |
--------------
|
|
COL1 COL2
|
A 199
|
--------------
|
insert into simple_link values ("B", 299) |
--------------
|
|
--------------
|
select * from simple_link |
--------------
|
|
COL1 COL2
|
B 299
|
A 199
|