get值表

q35jwt9p  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(165)

我有一个关于to表(student和course)和关系表studentcourse的项目:

@ManyToMany(cascade = CascadeType.ALL )
@JoinTable(
        name = "StudentCourse",
        joinColumns = { @JoinColumn(name = "studentid") },
        inverseJoinColumns = { @JoinColumn(name = "courseid") }
)

现在我想给出这个表的值,并将它连接到另一个表。但它不起作用。请帮帮我。我想知道的是,还有什么方法比我做的这项工作更好…..这是我做这项工作的代码:

public static List<Course> getSelectedCurse() throws SQLException {
   yourstcode = Console.getInputInteger("enter your code");
   Session session = OpenSession1();
   List<Course> courses = session.createNamedQuery("SELECT coursename FROM Course where id in (SELECT courseid from StudentCourse WHERE studentid=" + yourstcode + "").list();
   CloseSession(session);
   return courses;
}

//courseid和coursecode是我的外键,它们引用了course和student表中的id

b4wnujal

b4wnujal1#

我认为它不起作用,因为您使用的是createnamedquery方法。如果您使用的是jpql语法,请使用createquery;如果您想要使用纯sql语法,请使用createnativequery。

相关问题