Oracle Entity FW & ORA-12704: character set mismatch

Discussion of open issues, suggestions and bugs regarding Entity Framework support in ADO.NET Data providers
Post Reply
pari
Posts: 17
Joined: Thu 27 Nov 2008 12:33

Oracle Entity FW & ORA-12704: character set mismatch

Post by pari » Wed 29 Jul 2009 05:10

Hi,
I have problem with automaticaly SELECT construction with three tables.

VS2008+Oracle 10g+Entity Developer 2.20.30+Devart Data Oracle 5.25.37.0

Bye, PaRi

SQL script:

Code: Select all

create table A_P  
( 
	id NUMBER(8) NOT NULL,
	name NVARCHAR2(126) NOT NULL
);

create table A_S
( 
	id NUMBER(8) NOT NULL,
	id_p NUMBER(8) NOT NULL,
	name NVARCHAR2(126) NOT NULL
);

create table A_E
( 
	id NUMBER(8) NOT NULL,
	id_p NUMBER(8) NOT NULL,
	zip NUMBER(5) NOT NULL
);


ALTER TABLE A_P ADD CONSTRAINT PK_A_P
	PRIMARY KEY (id);

ALTER TABLE A_S ADD CONSTRAINT PK_A_S
	PRIMARY KEY (id);

ALTER TABLE A_E ADD CONSTRAINT PK_A_E
	PRIMARY KEY (id);


ALTER TABLE A_S ADD CONSTRAINT FK_A_S_A_P
	FOREIGN KEY (id_p) REFERENCES A_P (id)
;

ALTER TABLE A_E ADD CONSTRAINT FK_A_E_A_P
	FOREIGN KEY (id_p) REFERENCES A_P (id)
;
Program code:

Code: Select all

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using DataSourceModel1;

namespace DevartErrorReport1
{
    class Program
    {
        static void Main(string[] args)
        {
            //--- monitor
            Devart.Data.Oracle.OracleMonitor monitor = new Devart.Data.Oracle.OracleMonitor();
            monitor.IsActive = true;
            //---

            DataSourceModel1.DataSourceModel1Entities entities = new DataSourceModel1.DataSourceModel1Entities();

            //Next line is generating error {"ORA-12704: character set mismatch"}
            foreach (var item in entities.APs.Include("AS").Include("AE"))
            {
                Console.WriteLine(String.Format("{0} > {1}", item.Id, item.Name));
            }
        }
    }
}
There code gained via OracleMonitor

Problem is in code "TO_CHAR(NULL) AS C5", correct is (for example) "TO_NCHAR(NULL) AS C5"

Code: Select all

 
    SELECT
    "UnionAll1".ID AS C1,
    "UnionAll1".NAME AS C2,
    "UnionAll1".C2 AS C3,
    "UnionAll1".C1 AS C4,
    "UnionAll1".C3 AS C5,
    "UnionAll1".ID1 AS C6,
    "UnionAll1".NAME1 AS C7,
    "UnionAll1".ID_P AS C8,
    "UnionAll1".C4 AS C9,
    "UnionAll1".C5 AS C10,
    "UnionAll1".C6 AS C11,
    "UnionAll1".C7 AS C12
    FROM  (SELECT
            CASE WHEN ("Extent2".ID IS NULL) THEN  FLOOR(CAST(NULL AS NUMBER)) ELSE 1 END AS C1,
            "Extent1".ID AS ID,
            "Extent1".NAME AS NAME,
            1 AS C2,
            CASE WHEN ("Extent2".ID IS NULL) THEN  FLOOR(CAST(NULL AS NUMBER)) ELSE 1 END AS C3,
            "Extent2".ID AS ID1,
            "Extent2".NAME AS NAME1,
            "Extent2".ID_P AS ID_P,
             FLOOR(CAST(NULL AS NUMBER)) AS C4,
             FLOOR(CAST(NULL AS NUMBER)) AS C5,
             FLOOR(CAST(NULL AS NUMBER)) AS C6,
             FLOOR(CAST(NULL AS NUMBER)) AS C7
            FROM  EMISSION.A_P "Extent1"
            LEFT OUTER JOIN EMISSION.A_S "Extent2" ON "Extent1".ID = "Extent2".ID_P
    UNION ALL
            SELECT
            2 AS C1,
            "Extent3".ID AS ID,
            "Extent3".NAME AS NAME,
            1 AS C2,
             FLOOR(CAST(NULL AS NUMBER)) AS C3,
             FLOOR(CAST(NULL AS NUMBER)) AS C4,
             TO_CHAR(NULL) AS C5,
             FLOOR(CAST(NULL AS NUMBER)) AS C6,
            1 AS C7,
            "Extent4".ID AS ID1,
            "Extent4".ZIP AS ZIP,
            "Extent4".ID_P AS ID_P
            FROM  EMISSION.A_P "Extent3"
            INNER JOIN EMISSION.A_E "Extent4" ON "Extent3".ID = "Extent4".ID_P) "UnionAll1"
    ORDER BY "UnionAll1".ID ASC, "UnionAll1".C1 ASC


AndreyR
Devart Team
Posts: 2919
Joined: Mon 07 Jul 2008 13:16

Post by AndreyR » Wed 29 Jul 2009 07:14

Thank you for the report, we will investigate this problem.

sergeyb
Posts: 6
Joined: Fri 07 Aug 2009 17:40

Post by sergeyb » Fri 07 Aug 2009 17:42

Is there a time frame for this fix? I ran into the same problem, and I cannot really proceed.

Thank you.
--Sergey

AndreyR
Devart Team
Posts: 2919
Joined: Mon 07 Jul 2008 13:16

Post by AndreyR » Thu 17 Sep 2009 11:36

The problem is fixed. More information is available in this post:
http://www.devart.com/forums/viewtopic.php?t=15752

AndreyR
Devart Team
Posts: 2919
Joined: Mon 07 Jul 2008 13:16

Post by AndreyR » Fri 25 Sep 2009 07:29

The new build is available.

Post Reply