问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

hibernate HQL添加语句

发布网友 发布时间:2022-04-19 09:47

我来回答

6个回答

热心网友 时间:2022-04-11 01:28

那么多人说了半天都没有解决楼主所提问题,实际上这个问题我已经说个多次了,现在让我再一次来回复楼主的问题吧:
使用HQL语句来完成插入操作是不能实现的,不管你使用insert into....values...还是insert into.....select.....都不行

原因:因为Hibernate的HQL语言是用于面向对象实现查询功能的,然而在插入操作中是不会牵涉任何查询动作的,所以HQL不能用于insert语句的插入操作,而select、update、delete语句都可以有可能的查询实现,比如:

select语句时标准的查询,这个就不用再说了
update语句:update 对象名 set.....where......
delete语句:delete from 对象名 where .....
看到了没有,update与delete牵涉到where的查询筛选过程,这个过程是需要采用HQL来实现的,然而insert永远牵涉不到查询筛选过程,所以Hibernate没有对插入做insert实现

大家注意回答问题的时候要针锋相对,不要大非所问,比如楼主问能否采用HQL实现插入动作,你们就不要再要求楼主直接调save方法,也不要再说用本地SQL实现之类的,很明显这些楼主都是知道的,不用你来提醒别人应该怎么做,不应该怎么做。

搞不懂为什么有那么多人说HQL可以,说着这句话的人请你们动动脑子,如果不想动脑子自己动手试一下也可以看出问题嘛,不要张开嘴就乱说一通,误人子弟。追问谢谢您的回答,我需要的就是您这样的答案。高人

热心网友 时间:2022-04-11 02:46

先建一个实现类studentInsert,然后:

SessionFactory sf = new Configuration().configure().buildSessionFactory();
   Session session = sf.openSession();
   Transaction tx = session.beginTransaction();
     
    student st=new student();
    st.setId("0001");
    st.setUserName("Wang");
    st.setpassWord("123");
    session.save(st);
    tx.commit();
    session.close();

热心网友 时间:2022-04-11 04:21

首先我不是学java的。。。不过我用hibernate做过一个项目,试了下sql的insert语句好像是不行的,我也不是专业的,也没有深究,hibernate给封装好了save,你可以跟踪看一下源代码,你要是学这个的,应该不难吧 反正是用Query是不行的

热心网友 时间:2022-04-11 06:12

怎么会。。。createQuery() 这个方法就是,是session的方法。
噢,你说的意思是要用sql?
那就是createNativeSQL 我记得是这个,意思是原生的sql语句,不过我觉得这个有点鸡肋,既然用了hibernate,还写这个,那还不如直接JDBC。

热心网友 时间:2022-04-11 08:20

hibernate支持的语言NativeSQL,这个支持使用‘insert into。。。’这样的语句

热心网友 时间:2022-04-11 10:45

你好,hibernate支持的语言有:
1、NativeSQL:本地语言(数据库自己的SQL语句)
2、HQL :Hibernate自带的查询语句,可以使用HQL语言,转换成具体的方言
3、EJBQL:JPQL 1.0,可以认为是HQL的一个子节(重点)
4、QBC:Query By Cretira
5、QBE:Query By Example
当然有了,当然HQL是面向对象的查询语言,你可以去查查资料,如果只能save,那还了得。
HQL仅用于查询数据,不支持insert,update和delete语句,正确吗?

这个是可以的,直接通过insert into、update、delete进行操作即可:插入操作:Session session = HibernateUtil.getSessionFactory().getCurrentSession();session.beginTransaction();session.createQuery("insert into UserInfo(username) values('zhangsan')")删除操作:Session session = HibernateUtil.getSessio...

hibernate中hql语句貌似不支持datediff()函数查询,那我该怎么查询当天的...

日期,只有日期部分,不要时间段。Date today= Date tommorow= String hql=“select * from message where time BETWEEN :date1 AND :date2 ”;Query query=session.createQuery(hql);query.setParameter("date1", today);query.setParameter("date2", tommorow);List list = query.list();减少对D...

如何得到hibernate显示在控制台的hql或sql语句?

不知道楼主的意思是不是把那些占位符换成具体的值,这样就可以直接复制SQL语句在数据库控制台粘贴直行了。如果是这样的话。楼主有没有注意过直行hibernate时总是报的警告:log4j:WARN Please initialize the log4j system properly.使用这个log4j就可以显示相信信息。我给你一个属性文件:log4j.properties把他...

Hql 这句话什么意思?

hql就是hibernate里的sql语句,CommodityFee是一个实体类,是数据库表的一个映射类,from CommodityFee就相当于sql中的from+该类对应的表名,select 后边的new CommodityFee()表示把查询结果构造成一个类,返回的结果集就是类了。

hibernatr 在控制台query查询条件是中文查不到任何信息,英文可以_百度...

session.createQuery()以HQL查询语句为参数,生成一个查询对象。本例中的HQL语句为“from Student”,这是from子句,格式如下。from 类名 其中,类名可以为类的全限定名,如:from hibernate.ch06.Student Hibernate使用自动引入功能(auto import),会自动寻找需要的类,所以不推荐使用类的全限定名。

我的web项目使用hibernate框架,执行一条sql语句查询,但获取的结果却总...

您说的不是很详细:1.首先是执行后返回0,程序本身有没有报错;2.sql语句在分行时前后有没有加进去空格;3.执行的sql返回的是字段还是对象?如果是对象的话,sql对象字段有没有对应好;4.如果返回的是对象建议用hql试试;5.如果返回只是字段,接受值的类型有没有问题?这只是我日常处理问题的检查...

如何实现HQL动态查询

首先用request.getParameter 得到前台的值 然后写到MAP里 public List findByMap(Map map){ id = map.get("id");//获取值 String hql = null;hql = "select * from a where id = '"+id+"' ";List list = getHibernateTemplate().find(hql);//HibernateHQL模板 return list;} ...

在hibernate多对多使用连接表双向关联,添加新关系时,hibernate会把所有的...

您可以 aStudent.getTeachers().add(aTeacher);这样一个学生关联老师的数量是少的。在学生这一侧做操作比在老师一侧做操作关联的数据量少。提高效率。否则,就需要使用本地SQL的方式进行操作了。但是这样就又失去了使用Hibernate的意义了。使用Hibernate的一般原则是尽量通过Hibernate提供的API来完成数据库...

hibernetes mybatis 哪个好

Hibernate也可以自己写SQL来指定需要查询的字段,但这样就破坏了Hibernate开发的简洁性。而Mybatis的SQL是手动编写的,所以可以按需求指定查询的字段。Hibernate HQL语句的调优需要将SQL打印出来,而Hibernate的SQL被很多人嫌弃因为太丑了。MyBatis的SQL是自己手动写的所以调整方便。但Hibernate具有自己的日志统计。Mybatis本身...

mybatis与hibernate的区别,详细点

mybatis的主要思想是sql Mapping,而hibernate是OR Mapping,mybatis应用到项目中会比较直观一点,能直接看到sql,而hibernate是通过操作对象操作数据,可以很灵活的运用于不同的数据库之间。个人感觉mybatis用着更灵活

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
财付通的钱怎么转入微信 怎样用QQ币充值微信? 土工膜施工方法 防渗土工膜防渗土工膜施工方法 土工膜施工方法细则土工膜施工方法细则 土工膜施工工艺是怎样的 操作系统内容简介 操作系统原理与应用(Linux)版权信息 山东莱芜中德利土工新材料有限公司主营产品 总是得罪人,怎样才能在职场中顺风顺水 Hibernate有几种查询方法 关系数据库的集合 delphi7 编写的程序出错 易语言编译的时候出现问题 哪位大神有QBEBI110.dll免费版软件百度云资源 Hibernate的几种查询方式 英语翻译 哪些是关系演算语言 a.sql b.qbe c.quel d.isbl 域关系演算语言qbe在sql server中能运行吗 QBE工具与SQL有何相似之处与不同之处? 为什么西瓜视频发不了视频了? 中国青春偶像剧 海珠区有多少个政府单位? 求一封写给老婆的诙谐幽默的检讨书 求青春偶像剧的介绍!!! 问道结婚后,婚服怎么脱掉啊,太丑了,难道只有等它自己消失吗? 即墨厨具商城这有没有送煤气的?电话多少? 求欢喜冤家类的爱情喜剧 404 Not Found 有什么偶像剧好看的 跪求delphi7 的quickrep安装包。 求eset nod32免费激活码. sql developer 输入参数为list怎么设置 西瓜视频首页怎么还原原来的模式 水族箱如何换水 给鱼换水的时候需要留一些旧水吗? 水族缸要全换水怎办? 水族鱼缸草缸为什么要换水?如何换水? 优质 水族箱怎么换水? 鱼缸多长时间换水 水族箱换水用什么方法 水族箱多久换一次水 水族箱要经常换水吗? 草缸怎么换水 水族箱怎么换水 水族箱如何换水比较方便 水族箱换水 鱼缸要怎样换水啊? 冬天如何给水族箱换水?换进去的水温度控制不好 可丽爰水族馆的鱼缸养鱼,换水时需要晒水三天吗?
  • 焦点

最新推荐

猜你喜欢

热门推荐