cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Gentry" <blackn...@gmail.com>
Subject Re: Select Query on Table with no Primary Key
Date Wed, 06 Jun 2007 15:27:24 GMT
Cayenne needs PKs in order to do UPDATEs.  If you aren't modifying the data,
you might try fetching as data rows instead of CayenneDataObjects.  I'm not
certain if that would work, but has a much higher chance.  Of course, you
still won't be able to make a CayenneDataObject out of it.

/dev/mrg


On 6/6/07, Dave Merrin <dmerrin@ipasystems.co.uk> wrote:
>
> Hi,
>
> I'm trying to run a SelectQuery on a table with no primary key.
> Unfortunately it's not working. Can anybody help? I have no control over
> the database so I can't add in primary keys.
>
> Cheers,
>
> Dave
>
> INFO  QueryLogger: SELECT t0.ID, t0.KIND, t0.TIMESTAMP FROM
> MPS.STATETABLE_CPT t0
> INFO  QueryLogger: === returned 949 rows. - took 203 ms.
> INFO  QueryLogger: +++ transaction committed.
> Exception in thread "main" org.apache.cayenne.CayenneRuntimeException:
> [v.2.0.3 May 6 2007] Won't be able to create ObjectId for
> 'StatetableCpt'. Reason: DbEntity 'STATETABLE_CPT' has no Primary Key
> defined.
>         at
> org.apache.cayenne.access.ObjectResolver.init(ObjectResolver.java:75)
>         at
> org.apache.cayenne.access.ObjectResolver.<init>(ObjectResolver.java:57)
>         at
> org.apache.cayenne.access.DataDomainQueryAction.interceptObjectConversion(
> DataDomainQueryAction.java:319)
>         at
> org.apache.cayenne.access.DataDomainQueryAction.execute(
> DataDomainQueryAction.java:116)
>         at org.apache.cayenne.access.DataDomain.onQuery(DataDomain.java
> :746)
>         at
> org.apache.cayenne.util.ObjectContextQueryAction.runQuery(
> ObjectContextQueryAction.java:217)
>         at
> org.apache.cayenne.access.DataContextQueryAction.execute(
> DataContextQueryAction.java:54)
>         at
> org.apache.cayenne.access.DataContext.onQuery(DataContext.java:1387)
>         at
> org.apache.cayenne.access.DataContext.performQuery(DataContext.java:1376)
>         at
> ipa.printexpress.datahelpers.Session.fetchEntityCollection(Session.java
> :158)
>         at
> ipa.px.importer.abb.ABBImporterMain.main(ABBImporterMain.java:109)
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message