我需要使用Java方法动态创建一个表,并将其所有行转换为Mapping类对象列表。问题是...在休眠中执行sql CREATE TABLE查询
是否有办法动态地执行CREATE TABLE查询?
我看到了一些使用doInHibernate()的例子,但是它在我尝试使用时并不起作用。我能不用特定的方法做到这一点吗?
我需要使用Java方法动态创建一个表,并将其所有行转换为Mapping类对象列表。问题是...在休眠中执行sql CREATE TABLE查询
是否有办法动态地执行CREATE TABLE查询?
我看到了一些使用doInHibernate()的例子,但是它在我尝试使用时并不起作用。我能不用特定的方法做到这一点吗?
试试这个:
session.createSQLQuery(query).executeUpdate();
另一种可能性是:
createStatement().execute(someddl);
你可以只执行原生SQL查询:session.createSQLQuery("create table .....").executeUpdate();
其中 “会话” 是你的Hibernate会话。
但是,如果您已经有映射文件,则只需在hibernate配置中设置hibernate.hbm2ddl.auto
属性即可基于映射文件生成架构。