This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Hi, I am using Derby (cloudscape) embedded in a Swing-Application.
My question: How can I process a query similar to this, where I have references to 2 tables in the same query:
"SELECT Person.Author, Books.Title, Books.Year FROM Person, Books WHERE Person.ID = Books.ID";
It seems like Derby lets me connect to one table only at a time. I searched the Manual and Reference script thoroughly but in vain. I know that queries like the one I mentioned above are possible, because I saw similar examples in the reference book, but they did not show the according connection code. I suspect the connection code must be different, but how?
Here is, how I query data from one table only, which works fine:
(My tables are within one Databasesystem (DBSytem.Books, DBSystem.Person etc.)).
Any help is very much appreciated, thank you!
[ February 12, 2005: Message edited by: juliane gross ] [ February 12, 2005: Message edited by: juliane gross ]
I understand the error message, since the getConnection() method never learns about the existence of table BOOK. I probably need to adapt the getConnection syntax for multiple table queries, but don't know how. Thank you for any tips!
author & internet detective
Juliane, getConnection() just gets a connection. It isn't specific to the type of query.
I think there way be a typo in the query. In your SQL, you have "FROM Person, Books", but the error message has "the table 'BOOK' does not exist." One has an "s" at the end and one does not.
You can verify this by trying your single query example with the following two queries: ResultSet rs = stm.executeQuery("SELECT title FROM Books); ResultSet rs = stm.executeQuery("SELECT title FROM Book);