dotConnect 5.25 for Oracle ORA-12704: character set mismatch

Discussion of open issues, suggestions and bugs regarding ADO.NET provider for Oracle
Post Reply
Posts: 7
Joined: Mon 09 Nov 2009 17:36

dotConnect 5.25 for Oracle ORA-12704: character set mismatch

Post by i.kopcanski » Mon 09 Nov 2009 18:28

We develop .NET Silverlight application that uses both MSSQL and Oracle database that have absolutelly equal structure. We use dotConnect 5.25 for Oracle database.

By splitting *.edmx file to *.csl, *.msl and *.ssdl files we use single *.csl file (produced by MSSQL model) and different *.msl and *.ssdl files for MSSQL and Oracle model.

That is done in order to have single conceptual model for both databases. Unfortunatelly, while splitted model files for MSSQL database work, that's not the case for Oracle model. We have ORA-12704 character set mismatch exception with the following call stack refering pieces of code in dotConnect itself:

"An error occurred while executing the command definition. See the inner exception for details."

InnerException {"ORA-12704: character set mismatch"}
System.Exception {Devart.Data.Oracle.OracleException}

at xc.t.d()
at Devart.Data.Oracle.bk.b()
at Devart.Data.Oracle.t.a(Int32 A_0, a5 A_1)
at Devart.Data.Oracle.OracleCommand.a(CommandBehavior A_0, IDisposable A_1, Int32 A_2, Int32 A_3)
at Devart.Common.DbCommandBase.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
at Devart.Data.Oracle.Entity.d.a.a(CommandBehavior A_0)
at Devart.Data.Oracle.Entity.d.a.b(CommandBehavior A_0)
at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior)

The code producing this error is the following:

using (EntitiesDisplayTemplate templatedDb = UnityManager.Container.Resolve())
var listScreens = from p in templatedDb.v2_list_screen_def
.Include(m => m.v2_grid_columns
.Include(x => x.v2_columns)
/*.Include(y => y.picklists)*/)
.Include(p => p.v2_toolbar_buttons
.Include(tbn => tbn.v2_buttons))
where ( == listScreenDefID)
select p;

This LINQ to Entities statement is related to the database with following tables ((one)1-----*(many)):

v2_list_screen_def 1-------* v2_grid_coluns *-------1 v2_columns
v2_list_screen_def 1-------* v2_toolbar_buttons *-------1 v2_buttons

Could you please provide any piece of information regarding this issue, if you have encountered it? Or at least could you consider our alternatives?

Thanks in advance.


Devart Team
Posts: 8086
Joined: Thu 14 Aug 2008 12:44

Post by Shalex » Tue 10 Nov 2009 10:23

Post Reply