我们有这个学校项目,我们正在创建一个图书馆系统,其主要目的是使用数据库连接。在这种情况下,JPA和ObjectDB。
我们的问题是我们有3张桌子。一个描述一本书(标题,作者和出版年份),第二个是借款人(名字,姓氏,地址,电子邮件和电话号码),最后一个表是从其他两个获得主要ID密钥的借阅功能表。
问题在于,当我们使用列表借用的book-function时,它只打印出其他两个表中的ID。我们认为问题是SQL查询,我们没有机会正确学习SQL。
所以我们的问题是,我们如何创建一个SQL查询,从查询表中获取标题,从借用者表中获取名字而不是ID。
我们只能设法工作的SQL查询是这样的:
TypedQuery<BokLån> q = em.createQuery("SELECT bookborrow FROM BookBorrow BookBorrow", BookBorrow.class);
答案 0 :(得分:0)
IT是获取和获取类型机制的问题。目前您的实体是惰性加载的,您可以在实体类中加载这些实体
答案 1 :(得分:0)
您需要编写一个正确的JOIN语句来将lending-table与其他表合并,并从那里检索信息。
有些事情:
SELECT
book.title,
person.firstname,
person.lastname
FROM
borrower
JOIN book ON book.bookid = borrower.bookID
JOIN person ON person.personid = borrower.personid
它的工作方式是ON条件指定如何将表绑定在一起。在您的情况下,借用者表具有personID,该personID与person表中的PersonID列相关。建立与JOIN的链接,然后可以访问Person表中的其他列。
完全相同的方法适用于书籍表。