我正在尝试使用本机SQL代码在HQlL中简单地插入数据库。
它没有给出任何错误,它只是不起作用。任何帮助表示赞赏。
感谢。
public void AddMedicament(Medicament medicament) {
System.out.println(medicament.getName());
// open a database connection
Session session = FarmacieHibernateUtil.getSessionFactory().openSession();
Transaction transaction = session.beginTransaction();
// prepare SQL insert command
session.createSQLQuery("insert into Medicament(name) values('test')");
// close the database connection
session.close();
}
答案 0 :(得分:2)
我不熟悉Hibernate,但我没有看到你正在运行你的命令。您只需创建查询和关闭会话我认为您需要一些语句来执行它。
答案 1 :(得分:2)
您需要致电
session.executeUpdate()
transaction.commit();
在结束会议之前。
答案 2 :(得分:2)
如果使用createSQLQuery,则抛出本机sql指令
您的对象表名称也是Medicament吗?
答案 3 :(得分:2)
session.saveOrUpdate(药物); tx.commit(); 如果你没有设置主键,它将插入,如果你在域对象中设置PK,那么它将被更新。
如果您使用的是Spring ORM,则无需在hibernate中执行Query。