我正在使用Hibernate 4.1.7并尝试更新对象,但没有文档应该如何完成.目前,我这样做:
Person person = personDao.getPersonById(1);
person.setAge(23);
person.setLastname("McName");
person = personDao.update(person);
Run Code Online (Sandbox Code Playgroud)
在PersonDao更新看起来像:
public Person update(Person person) {
return entityManager.merge(person);
}
Run Code Online (Sandbox Code Playgroud)
在PersonDao中,getPersonById是:
public Person getPersonById(int id) {
personQuery = entityManager.createNamedQuery("Person.findPerson", Person.class);
personQuery.setParameter("id", id);
return personQuery.getSingleResult();
}
Run Code Online (Sandbox Code Playgroud)
我也在Person类中定义了命名查询,并在这里:
@NamedQuery(name="Person.findPerson", query="SELECT p FROM Person p WHERE p.id = :id")
Run Code Online (Sandbox Code Playgroud)
通过使用我的Person将不会更新,我应该如何使用hibernate实现更新?
可能重复:
关键字"用户"附近的语法不正确
我正在尝试在SQL Server Management Studio 2008中使用非常简单的SQL查询,确切的查询是:
SELECT * FROM User;
Run Code Online (Sandbox Code Playgroud)
但是当我尝试运行它时,它给了我错误.
消息156,级别15,状态1,行1
关键字"用户"附近的语法不正确.
这个表存在,当我尝试用这个语句选择任何其他表数据时(通过替换表名),我得到了我想要的所有数据.有谁想法如何修复它?试图google它,但没有得到答案.