These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 
Author Message
 Post subject: Exception in list() function
PostPosted: Tue Mar 07, 2006 9:43 am 
Newbie

Joined: Tue Mar 07, 2006 9:15 am
Posts: 3
I just want to read some record from the Database. But I get a "could not execute query" exception. Is it cause of MS Access or what is wrong with my code?
The exception is thrown bei the list() function.

Hibernate version: 3.1.2

Mapping documents:
Code:
public class TestCase implements Serializable {
    private String TestCaseID;
    private String name;

    [...]

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    [...]

}


Code between sessionFactory.openSession() and session.close():
Code:
        List l = session.createCriteria(TestCase.class).add(Expression.like("testCaseID", "d7120dfe-0d09-41a1-b823-93b130851fbb")).list();


Full stack trace of any exception that occurs:
Code:
2006-03-07 13:45:59,849 [main] WARN  org.hibernate.jdbc.AbstractBatcher - exception clearing maxRows/queryTimeout
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver]Optional feature not implemented
   at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6958)
   at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7115)
   at sun.jdbc.odbc.JdbcOdbc.SQLGetStmtOption(JdbcOdbc.java:4417)
   at sun.jdbc.odbc.JdbcOdbcStatement.getStmtOption(JdbcOdbcStatement.java:1208)
   at sun.jdbc.odbc.JdbcOdbcStatement.getQueryTimeout(JdbcOdbcStatement.java:697)
   at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:226)
   at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:162)
   at org.hibernate.loader.Loader.doQuery(Loader.java:714)
   at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
   at org.hibernate.loader.Loader.doList(Loader.java:2145)
   at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
   at org.hibernate.loader.Loader.list(Loader.java:2024)
   at org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:94)
   at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1552)
   at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:283)
   at com.alcatel.hello.Message.main(Message.java:75)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at com.intellij.rt.execution.application.AppMain.main(AppMain.java:86)
2006-03-07 13:45:59,849 [main] DEBUG org.hibernate.jdbc.AbstractBatcher - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
2006-03-07 13:45:59,849 [main] DEBUG org.hibernate.jdbc.AbstractBatcher - closing statement
2006-03-07 13:45:59,864 [main] DEBUG org.hibernate.util.JDBCExceptionReporter - could not execute query [select this_.UID as UID1_0_, this_.Name as Name1_0_, this_.Description as Descript3_1_0_, this_.CreationDate as Creation4_1_0_, this_.ModificationDate as Modifica5_1_0_, this_.LastModifiedBy as LastModi6_1_0_, this_.CreatedBy as CreatedBy1_0_, this_.Owner as Owner1_0_, this_.Preconditions as Precondi9_1_0_, this_.Postconditions as Postcon10_1_0_, this_.AcceptanceCriteria as Accepta11_1_0_ from TestCase this_ where this_.UID like ?]
java.sql.SQLException: No data found
   at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7139)
   at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3908)
   at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.java:5699)
   at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:353)
   at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:410)
   at org.hibernate.type.StringType.get(StringType.java:18)
   at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:113)
   at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:102)
   at org.hibernate.type.ManyToOneType.hydrate(ManyToOneType.java:95)
   at org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:1899)
   at org.hibernate.loader.Loader.loadFromResultSet(Loader.java:1372)
   at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1300)
   at org.hibernate.loader.Loader.getRow(Loader.java:1197)
   at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:569)
   at org.hibernate.loader.Loader.doQuery(Loader.java:689)
   at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
   at org.hibernate.loader.Loader.doList(Loader.java:2145)
   at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
   at org.hibernate.loader.Loader.list(Loader.java:2024)
   at org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:94)
   at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1552)
   at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:283)
   at com.alcatel.hello.Message.main(Message.java:75)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at com.intellij.rt.execution.application.AppMain.main(AppMain.java:86)
2006-03-07 13:45:59,864 [main] WARN  org.hibernate.util.JDBCExceptionReporter - SQL Error: 0, SQLState: null
2006-03-07 13:45:59,880 [main] ERROR org.hibernate.util.JDBCExceptionReporter - No data found
Exception in thread "main" org.hibernate.exception.GenericJDBCException: could not execute query
   at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:91)
   at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:79)
   at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
   at org.hibernate.loader.Loader.doList(Loader.java:2148)
   at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029)
   at org.hibernate.loader.Loader.list(Loader.java:2024)
   at org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:94)
   at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1552)
   at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:283)
   at com.alcatel.hello.Message.main(Message.java:75)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at com.intellij.rt.execution.application.AppMain.main(AppMain.java:86)
Caused by: java.sql.SQLException: No data found
   at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7139)
   at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3908)
   at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.java:5699)
   at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:353)
   at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:410)
   at org.hibernate.type.StringType.get(StringType.java:18)
   at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:113)
   at org.hibernate.type.NullableType.nullSafeGet(NullableType.java:102)
   at org.hibernate.type.ManyToOneType.hydrate(ManyToOneType.java:95)
   at org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:1899)
   at org.hibernate.loader.Loader.loadFromResultSet(Loader.java:1372)
   at org.hibernate.loader.Loader.instanceNotYetLoaded(Loader.java:1300)
   at org.hibernate.loader.Loader.getRow(Loader.java:1197)
   at org.hibernate.loader.Loader.getRowFromResultSet(Loader.java:569)
   at org.hibernate.loader.Loader.doQuery(Loader.java:689)
   at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
   at org.hibernate.loader.Loader.doList(Loader.java:2145)
   ... 11 more

Process finished with exit code 1


Name and version of the database you are using:
MS Access 2002

The generated SQL (show_sql=true):
Code:
    select
        this_.UID as UID1_0_,
        this_.Name as Name1_0_,
        this_.Description as Descript3_1_0_,
        this_.CreationDate as Creation4_1_0_,
        this_.ModificationDate as Modifica5_1_0_,
        this_.LastModifiedBy as LastModi6_1_0_,
        this_.CreatedBy as CreatedBy1_0_,
        this_.Owner as Owner1_0_,
        this_.Preconditions as Precondi9_1_0_,
        this_.Postconditions as Postcon10_1_0_,
        this_.AcceptanceCriteria as Accepta11_1_0_
    from
        TestCase this_
    where
        this_.UID like ?


MFG
X


Top
 Profile  
 
 Post subject:
PostPosted: Tue Mar 07, 2006 6:56 pm 
Expert
Expert

Joined: Thu Dec 23, 2004 9:08 pm
Posts: 2008
That looks weird.. seems like the DB is barfing because your query returns no rows? Odd. Can you verify that the query returns at least one row: if it doesn't, try manually adding a matching row. If adding a row fixes the problem, then you can point your finger at BIll Gates, laugh heartily, and get a propoer DB.

If it doesn't fix it, then I'm stumped.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Mar 10, 2006 7:05 am 
Newbie

Joined: Tue Mar 07, 2006 9:15 am
Posts: 3
2006-03-10 11:47:48,985 [main] DEBUG org.hibernate.persister.entity.AbstractEntityPersister - Hydrating entity: [com.alcatel.hibernate.TestCase#d7120dfe-0d09-41a1-b823-93b130851fbb]
2006-03-10 11:47:48,985 [main] DEBUG org.hibernate.type.StringType - returning 'Hello World' as column: Name1_
2006-03-10 11:47:49,000 [main] DEBUG org.hibernate.type.StringType - returning 'test' as column: Descript3_1_
2006-03-10 11:47:49,047 [main] DEBUG org.hibernate.type.DateType - returning '09 März 2006' as column: Creation4_1_
2006-03-10 11:47:49,063 [main] DEBUG org.hibernate.type.DateType - returning '09 März 2006' as column: Modifica5_1_
2006-03-10 11:47:49,063 [main] DEBUG org.hibernate.type.StringType - returning 's_lang' as column: LastModi6_1_
2006-03-10 11:47:49,078 [main] DEBUG org.hibernate.type.StringType - returning 's_lang' as column: CreatedBy1_
2006-03-10 11:47:49,078 [main] DEBUG org.hibernate.type.StringType - returning 's_lang' as column: Owner1_
2006-03-10 11:47:49,094 [main] DEBUG org.hibernate.type.StringType - returning 'my condition' as column: Precondi9_1_
2006-03-10 11:47:49,094 [main] DEBUG org.hibernate.type.StringType - returning 'my condition' as column: Postcon10_1_
2006-03-10 11:47:49,110 [main] DEBUG org.hibernate.type.StringType - returning 'my criteria' as column: Accepta11_1_

Thats also in the stacktrace....
F****** **** ****** ***** [...] ***** **** Microsoft!!

No idea?

X


Top
 Profile  
 
 Post subject:
PostPosted: Sun Mar 12, 2006 4:31 pm 
Expert
Expert

Joined: Thu Dec 23, 2004 9:08 pm
Posts: 2008
I just noticed that you have "UID like ?". I know that MS's other "offering" in this arena, SQLServer, doesn't support like with guids. Change that like to =, or change your id to something that isn't of uniqueidentifier type.


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.