2016-01-12 3 views
1

Я импортирую данные из MySQL db в oracle 11g ежедневно, используя dblink.Data import работает нормально (я использую вставку как выбор), но импортированные столбцы varchar в oracle показывают что-то вроде этого (пробелы между буквами).Доступ к данным mysql в oracle

d o c M g r/w o r k f l o w/q b y u e d u 

я использую это для каждого столбца, который получает вставленной

select replace("field2",' ','') field2 from 

У нас есть какие-либо настройки или любой Unicode/CharacterSet, с которым я могу вставить без использования функции замены.

+0

ли наборы символов в Oracle и Mysql разные? Попробуйте преобразовать() данные на Mysql в набор символов Oracle. –

ответ

0

Используйте функцию REPLACE в вашей вставке.

INSERT INTO yourtable 
(field1, field2, field3) 
SELECT field1, REPLACE("field2",' ',''), field3 
FROM yourmysqltable; 
+0

Я уже это делаю, количество таблиц, использующих это, увеличивается с течением времени. Я ищу универсальное решение, которое можно применять по схеме. –

+0

добавление HS_NLS_NCHAR = UCS2 в файл initXXXX.ora разрешило эту проблему. DBA внесла эти изменения и работает с функцией замены. –

0

добавив HS_NLS_NCHAR = UCS2 в файл initXXXX.ora решить эту issue.DBA сделал эти изменения, и она работает с функцией замены

Смежные вопросы