Skip to main content
Announcements
Introducing Qlik Answers: A plug-and-play, Generative AI powered RAG solution. READ ALL ABOUT IT!
cancel
Showing results for 
Search instead for 
Did you mean: 
SupriyaTapkir
Contributor
Contributor

Getting error ORA-12704 while inserting data to Oracle from SQL Server

Hi All,

I am trying to read a table from SQL Server and wants to put the same inti Oracle along with some additional columns like SurrogateKeyColumn(SequenceGenerator) and TimeStamp columns.

However, I am getting error ORA12704- Character set mismatch error.

Below is the error :

Exception in component tDBOutput_2 (SampleFetchData)

java.sql.SQLException: ORA-12704: non-concordance de jeux de caractères

caused by: ORA-12704: non-concordance de jeux de caractères

at talend_datamigration_gsp.samplefetchdata_0_1.SampleFetchData.tDBInput_2Process(SampleFetchData.java:5337)

at talend_datamigration_gsp.samplefetchdata_0_1.SampleFetchData.runJobInTOS(SampleFetchData.java:7579)

at talend_datamigration_gsp.samplefetchdata_0_1.SampleFetchData.main(SampleFetchData.java:7366)

Caused by: java.sql.SQLException: ORA-12704: non-concordance de jeux de caractères

at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:494)

at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:446)

at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1054)

at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:623)

at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:252)

at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:612)

at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:226)

at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:59)

at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:910)

at oracle.jdbc.driver.OraclePreparedStatement.executeForRowsWithTimeout(OraclePreparedStatement.java:9804)

at oracle.jdbc.driver.OraclePreparedStatement.executeLargeBatch(OraclePreparedStatement.java:9904)

at oracle.jdbc.driver.T4CPreparedStatement.executeLargeBatch(T4CPreparedStatement.java:1364)

at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:9839)

at oracle.jdbc.driver.OracleStatementWrapper.executeBatch(OracleStatementWrapper.java:234)

at talend_datamigration_gsp.samplefetchdata_0_1.SampleFetchData.tDBInput_2Process(SampleFetchData.java:5327)

... 2 more

Caused by: Error : 12704, Position : 479, Sql = INSERT INTO <DB_NAME>.<Table_Name> (RID,PROJECTID,BUCODE,ID,QUEUEID,KEYVALUE,STATUS,ATTEMPT,LOADED,COMPLETED,REXCEPTION,EXCEPTIONREASON,RDEFERRED,WORKTIME,RDATA,QUEUEIDENT,IDENT,SESSIONID,PRIORITY,PREVWORKTIME,FINISHED,ATTEMPTWORKTIME,EXCEPTIONREASONVARCHAR,EXCEPTIONREASONTAG,ENCRYPTID,LASTUPDATED,LOCKTIME,LOCKID,CREATED_ON,UPDATED_ON) VALUES (:1 ,:2 ,:3 ,:4 ,:5 ,:6 ,:7 ,:8 ,:9 ,:10 ,:11 ,:12 ,:13 ,:14 ,:15 ,:16 ,:17 ,:18 ,:19 ,:20 ,:21 ,:22 ,:23 ,:24 ,:25 ,:26 ,:27 ,:28 ,:29 ,:30 ), OriginalSql = INSERT INTO <DB_NAME>.<Table_Name> (RID,PROJECTID,BUCODE,ID,QUEUEID,KEYVALUE,STATUS,ATTEMPT,LOADED,COMPLETED,REXCEPTION,EXCEPTIONREASON,RDEFERRED,WORKTIME,RDATA,QUEUEIDENT,IDENT,SESSIONID,PRIORITY,PREVWORKTIME,FINISHED,ATTEMPTWORKTIME,EXCEPTIONREASONVARCHAR,EXCEPTIONREASONTAG,ENCRYPTID,LASTUPDATED,LOCKTIME,LOCKID,CREATED_ON,UPDATED_ON) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?), Error Msg = ORA-12704: non-concordance de jeux de caractères

at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:498)

Labels (4)
1 Reply
Anonymous
Not applicable

Hello,

We need a little bit more information to address your issue.

Could you please clarify in which Talend version/edition you are? What Oracle server version are you using and did you identify the column causing this error?

We will appreciate it a lot if you could post your job setting screenshot with data type here.

Best regards

Sabrina