原本以为HQL(Hibernate Query Language) 只是一种查询语言,只能进行DDL操作,可是当我利用Hibernate的API进行update的时候,如果进行配置,默认就会更新整行!太不人道了!
配置方法 :
在Annotation中 在属性GET方法上加上@Column(updatable=false) view plaincopy to clipboardprint? @Column(updatable=false) public int getAge() { return age; } @Column(updatable=false) public int getAge() { return age; }
第2种方法··使用XML中的 dynamic-update="true" view plaincopy to clipboardprint? <class name="com.sccin.entity.Student" table="student" dynamic-update="true"> <class name="com.sccin.entity.Student" table="student" dynamic-update="true">
第三种就是HQL方法了! Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); String hqlUpdate = "update Customer c set c.name = :newName where c.name = :oldName"; // or String hqlUpdate = "update Customer set name = :newName where name = :oldName"; int updatedEntities = s.createQuery( hqlUpdate ) .setString( "newName", newName ) .setString( "oldName", oldName ) .executeUpdate(); tx.commit(); session.close();
// insert只支持注意 ,只支持 INSERT INTO ... SELECT ... 形式,不支持 INSERT INTO ... VALUES ... 形式。
Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); String hqlInsert = "insert into DelinquentAccount (id, name) select c.id, c.name from Customer c where ..."; int createdEntities = s.createQuery( hqlInsert ) .executeUpdate(); tx.commit(); session.close(); INSERT 语句的伪码是:INSERT INTO EntityName properties_list select_statement。 properties_list 和 SQL INSERT 语句中的字段定义(column speficiation)类似 不过它只能显示当前类有关的属性,不支持多态!
相关推荐
Select/update/delete……from……where……groupby……having……orderby……asc/desc 其中的update/delete为Hibernate3中所新添加的功能,可见HQL查询非常类似于标准SQL查询。
HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL语法入门学习HQL...
HQL语句大全HQL语句大全HQL语句大全HQL语句大全HQL语句大全
完整的HQL 语句形势如下: Select/update/delete…… from …… where …… group by …… having …… order by …… asc/desc 其中的update/delete 为Hibernate3 中所新添加的功能
HQL语句 HQL语句 HQL语句 HQL语句 HQL语句
hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全hql语句大全
Hql PPt Hql PPt
Criteria查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过HQL(Hibernate Query Lanaguage)查询提供了更加丰富的和灵活的查询特性,因此Hibernate将HQL查询方式立为官方推荐的标准查询方式,HQL查询...
不喜欢使用myEclipse的朋友可以尝试下 最近在项目中使用Hibernate,由于需要使用HQL,找了很多资料,大都是MyEclipse中自带的HQL工具。...工具很好用,可以识别出HQL文的语法正确,并且解析为标准SQL语句。
hql模糊查询hql模糊查询hql模糊查询hql模糊查询
hibernate hql基本操作
HQL是完全面向对象的查询语言,因此可以支持继承和多态等特征。HQL查询依赖于Query类,每个Query实例对应一个查询对象,使用HQL查询按 如下步骤进行: (1)获取Hibernate Session对象; (2)编写HQL语句; (3)以HQL...
之前写好SQL,再到代码里面来写,语句复杂的看的时不时细节会忘记,用sql转换hql工具,直接贴近了就可以了;
hql语句常规 方法 使用 了解hql语句
hibernate查询之HQLhibernate查询之HQLhibernate查询之HQL
血缘关系解析工具源码_对hql集合进行静态分析_获取hql对应的血缘图
精通HQL.doc精通HQL.doc精通HQL.doc精通HQL.doc精通HQL.doc
批量删除数据批量插入数据 ...当通过JDBC API来执行SQL insert、update和delete语句时,SQL语句中涉及到的数据不会被加载到内存中,因此不会占用内存空间。 以下程序直接通过JDBC API来执行用于批量更新的SQL语句:
HQL语言大全HQL语言大全HQL语言大全
汇集了hql语句中大部分常用的函数 ABS(n) 取绝对值数学函数 数学函数 JPAQL HQL ABS(column_name[数字类型对象属性])