Sorry, I forgot to mention again....these are views, not tables.
Dave
Craig L Russell wrote:
I don't want to hijack this thread, but just point out that JPA does
not support tables without primary key; JDO does (including updates)
as an optional feature.
Craig
On Jun 6, 2007, at 8:41 AM, Dave Merrin wrote:
Sorry, I forgot to mention that I won't be updating the data. I would
like to move round the database using relationships though.
Apart from changing the database are there any hacks I could try to
get round this problem.
Cheers,
Dave
Michael Gentry wrote:
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 <[EMAIL PROTECTED]> 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)
Craig Russell
Architect, Sun Java Enterprise System http://java.sun.com/products/jdo
408 276-5638 mailto:[EMAIL PROTECTED]
P.S. A good JDO? O, Gasp!