Java 使用hibernate执行更新查询,但不更新表
我有一个包含5个部分(id、问题、结果)的数据库,我想用updatequery和hibernate更改我的数据库 我试过这个Java 使用hibernate执行更新查询,但不更新表,java,mysql,sql,hibernate,sql-update,Java,Mysql,Sql,Hibernate,Sql Update,我有一个包含5个部分(id、问题、结果)的数据库,我想用updatequery和hibernate更改我的数据库 我试过这个 public void update() { try { Session session = getSession(); Transaction tx = session.beginTransaction(); Query qu
public void update()
{
try
{
Session session = getSession();
Transaction tx = session.beginTransaction();
Query query = getSession().createQuery("update Nodes set question = 'test updating' where id = 1" );
tx.commit();
session.close();
我没有错误,在控制台我有
Infos: Hibernate: update node set question='test updating' where id=1
Hibernate执行我的更新时没有错误,但我的数据库中没有,为什么
谢谢你试试这个
public void update()
{
try
{
Session session = getSession();
Transaction tx = session.beginTransaction();
Query query = getSession().createQuery("update Nodes set question = 'test updating' where id = 1" );
query.executeUpdate(); //add this line
session.commit();
session.close();
希望这能帮助你解决问题试试这个
public void update()
{
try
{
Session session = getSession();
Transaction tx = session.beginTransaction();
Query query = session.createQuery("update Nodes set question = 'test updating' where id = 1" );
query.executeUpdate(); //add this line
tx.commit();
session.close();
}
}
希望这能对您有所帮助。谢谢您的回答,但我的数据库中没有更新我的更新。谢谢不抱歉,我没有错误,但它在数据库中没有更新。您可以尝试int results=qry.executeUpdate()并打印“results”和chek value它是否真的在更新。如果为1,则表示代码正在更新,但未记录在数据库中。如果它是0,这意味着ur db没有问题,它是您的queryI测试结果,结果等于“1”,那么您的问题可能是提交,请尝试session.commit()而不是tx.commit();