Query problem using TimesTen

Query problem using TimesTen

Postby arthernan » Mon 24 Feb 2014 17:42

I thought I read that dotConnect did support TimesTen. As a few people may know, Times Ten is oracle's in-memory database. And it looks to be a great option for unit testing. Since the query syntax is nearly identical to the regular oracle syntax.

After some work I was able to get the test code to drop and generate a test database every time. I can insert a row. But on a simple query:

Code: Select all
        public V_ZIPCODELONGLAT GetZipCenter(String zip)
        {
            return _Db.V_ZIPCODELONGLAT.Where(a => a.ZCLL_ZIPCODE == zip).FirstOrDefault();
        }


I get the following error:

An error occurred while executing the command definition. See the inner exception for details. ---> Devart.Data.Oracle.OracleException: ORA-31046: TT2777: Argument of unary operation cannot be parameter with undefined type; please use CAST operator to define a data type for parameter -- file "saCanon.c", lineno 25235, procedure "inferExprTN()"
Result StackTrace:
at Devart.Data.Oracle.a1.c(Int32 A_0)
at Devart.Data.Oracle.cs.a(Int32 A_0, cc A_1)
at Devart.Data.Oracle.OracleCommand.InternalExecute(CommandBehavior behavior, IDisposable disposable, Int32 startRecord, Int32 maxRecords, Boolean nonQuery)
at Devart.Common.DbCommandBase.ExecuteDbDataReader(CommandBehavior behavior, Boolean nonQuery)
at Devart.Data.Oracle.Entity.h.a(CommandBehavior A_0)
at Devart.Common.Entity.ck.b(CommandBehavior A_0)
at Devart.Data.Oracle.Entity.h.b(CommandBehavior A_0)
at System.Data.Entity.Infrastructure.Interception.InternalDispatcher`1.Dispatch[TInterceptionContext,TResult](Func`1 operation, TInterceptionContext interceptionContext, Action`1 executing, Action`1 executed)
at System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.Reader(DbCommand command, DbCommandInterceptionContext interceptionContext)
at System.Data.Entity.Core.EntityClient.Internal.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior)


The actual sql looks like this:

Code: Select all
SELECT "Extent1".ZCLL_ZIPCODE, "Extent1".ZCLL_RADLONG, "Extent1".ZCLL_RADLAT
FROM V_ZIPCODELONGLAT "Extent1"
WHERE (("Extent1".ZCLL_ZIPCODE = :p__linq__0) AND (:p__linq__0 IS NOT NULL)) AND ROWNUM <= 1
arthernan
 
Posts: 4
Joined: Thu 13 Feb 2014 17:11

Re: Query problem using TimesTen

Postby Shalex » Tue 25 Feb 2014 15:45

Please send us a small test project so that we can reproduce the issue in our environment. If necessary, also include the corresponding DDL/DML script in your request.
Shalex
Devart Team
 
Posts: 7391
Joined: Thu 14 Aug 2008 12:44

Re: Query problem using TimesTen

Postby Shalex » Wed 11 Jun 2014 14:32

The problem is fixed in the latest (8.4.171) build of dotConnect for Oracle: http://forums.devart.com/viewtopic.php?f=1&t=29687.
Shalex
Devart Team
 
Posts: 7391
Joined: Thu 14 Aug 2008 12:44


Return to dotConnect for Oracle