Posts

Showing posts from March, 2013

Multibyte Offline Data Move

Image
Moving data from a non Oracle database to Oracle can be a bit tricky when different character sets are at play. For this example Ill move data from a Russian (Cyrillic_General_CI_AS) SQL Server  database on windows  to UTF8 (AL32UTF8) Oracle  database on linux. SQL Server 2008 Cyrillic_General_CI_AS database CREATE TABLE multibyte1(col1 VARCHAR(10),col2 CHAR(10)); CREATE TABLE multibyte2(col2 NVARCHAR(10),col2 NCHAR(100)); INSERT INTO multibyte1 VALUES('фис','фис'); INSERT INTO multibyte2 VALUES('фис','фис'); SELECT * FROM multibyte1; SELECT * FROM multibyte2; SQL Developer can migrate the two tables to Oracle CREATE TABLE multibyte1(col1 VARCHAR2(10),col2 CHAR(10)); CREATE TABLE multibyte2(col2 NVARCHAR2(10),col2 NCHAR(100)); SQL Developer will also generate offline data move scripts which can perform the data move using SQL Servers BCP and Oracle SQL*Loader. There are two issues with the scripts generated by SQL Developer