I think I know what happens. There's no relationship established between the artist and his paintings (and also paintings and galleries). So when fetching paintings qualified on artist date of birth, you get no rows. So before the first commit do this:

(per http://cayenne.apache.org/doc/tutorial-dataobjects.html)

picasso.addToPaintings(girl);
picasso.addToPaintings(stein);

girl.setGallery(metropolitan);
stein.setGallery(metropolitan);

Andrus


On Jul 30, 2007, at 12:00 PM, McRib wrote:


here is the complete log - HTH:


INFO  QueryLogger: Created connection pool:
jdbc:mysql://localhost/playground
        Driver class: com.mysql.jdbc.Driver
        Min. connections in the pool: 1
        Max. connections in the pool: 1
INFO  QueryLogger: --- will run 3 queries.
INFO QueryLogger: Opening connection: jdbc:mysql://localhost/ playground
        Login: root
        Password: *******
INFO  QueryLogger: +++ Connecting: SUCCESS.
INFO  QueryLogger: --- transaction started.
INFO  QueryLogger: Detected and installed adapter:
org.apache.cayenne.dba.mysql.MySQLAdapter
INFO  QueryLogger: delete from PAINTING
INFO  QueryLogger: === updated 2 rows.
INFO  QueryLogger: delete from ARTIST
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: delete from GALLERY
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: +++ transaction committed.
INFO  QueryLogger: --- transaction started.
INFO  QueryLogger: LOCK TABLES AUTO_PK_SUPPORT WRITE
INFO QueryLogger: SELECT NEXT_ID FROM AUTO_PK_SUPPORT WHERE TABLE_NAME =
'ARTIST'
INFO QueryLogger: UPDATE AUTO_PK_SUPPORT SET NEXT_ID = NEXT_ID + 20 WHERE
TABLE_NAME = 'ARTIST' AND NEXT_ID = 260
INFO  QueryLogger: UNLOCK TABLES
INFO  QueryLogger: LOCK TABLES AUTO_PK_SUPPORT WRITE
INFO QueryLogger: SELECT NEXT_ID FROM AUTO_PK_SUPPORT WHERE TABLE_NAME =
'GALLERY'
INFO QueryLogger: UPDATE AUTO_PK_SUPPORT SET NEXT_ID = NEXT_ID + 20 WHERE
TABLE_NAME = 'GALLERY' AND NEXT_ID = 260
INFO  QueryLogger: UNLOCK TABLES
INFO  QueryLogger: LOCK TABLES AUTO_PK_SUPPORT WRITE
INFO QueryLogger: SELECT NEXT_ID FROM AUTO_PK_SUPPORT WHERE TABLE_NAME =
'PAINTING'
INFO QueryLogger: UPDATE AUTO_PK_SUPPORT SET NEXT_ID = NEXT_ID + 20 WHERE
TABLE_NAME = 'PAINTING' AND NEXT_ID = 260
INFO  QueryLogger: UNLOCK TABLES
INFO  QueryLogger: --- will run 3 queries.
INFO QueryLogger: INSERT INTO ARTIST (DATE_OF_BIRTH, ID, NAME) VALUES (?,
?, ?)
INFO QueryLogger: [bind: '1881-10-25 00:00:00.0', 260, 'Pablo Picasso']
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: INSERT INTO GALLERY (ID, NAME) VALUES (?, ?)
INFO  QueryLogger: [bind: 260, 'Metropolitan Museum of Art']
INFO  QueryLogger: === updated 1 row.
INFO QueryLogger: INSERT INTO PAINTING (ARTIST_ID, GALLERY_ID, ID, NAME)
VALUES (?, ?, ?, ?)
INFO  QueryLogger: [bind: NULL, NULL, 260, 'Gertrude Stein']
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: [bind: NULL, NULL, 261, 'Girl Reading at a Table']
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: +++ transaction committed.
INFO  QueryLogger: --- will run 1 query.
INFO  QueryLogger: --- transaction started.
INFO QueryLogger: SELECT t0.NAME, t0.ARTIST_ID, t0.GALLERY_ID, t0.ID FROM
PAINTING t0 - prepared in 7 ms.
INFO  QueryLogger: === returned 2 rows. - took 11 ms.
INFO  QueryLogger: +++ transaction committed.
INFO  QueryLogger: --- will run 1 query.
INFO  QueryLogger: --- transaction started.
INFO QueryLogger: SELECT t0.NAME, t0.ARTIST_ID, t0.GALLERY_ID, t0.ID FROM
PAINTING t0 WHERE UPPER(t0.NAME) LIKE UPPER(?) [bind: 'gi%']
INFO  QueryLogger: === returned 1 row. - took 32 ms.
INFO  QueryLogger: +++ transaction committed.
INFO  QueryLogger: --- will run 1 query.
INFO  QueryLogger: --- transaction started.
INFO QueryLogger: SELECT t0.NAME, t0.ARTIST_ID, t0.GALLERY_ID, t0.ID FROM PAINTING t0, ARTIST t1 WHERE t0.ARTIST_ID = t1.ID AND (t1.DATE_OF_BIRTH < ?)
[bind: '1907-01-01 00:00:00.777']
INFO  QueryLogger: === returned 0 rows. - took 16 ms.
INFO  QueryLogger: +++ transaction committed.



--
View this message in context: http://www.nabble.com/trouble-w-- tutorial-and-foreign-keys-tf4163514.html#a11860076
Sent from the Cayenne - User mailing list archive at Nabble.com.



Reply via email to