Tag: sql

Hibernate + PostgreSQL +网络地址类型(inet,cdir)

我已经用Hibernate 4.2.7和PostgreSQL 9.3.1开始了我的示例项目,一切进展顺利。 目前我想使用INET PostgreSQL类型,但我无法使用Hibernate进行映射。 我得到了这个hibernate错误: 无法确定类型:inet,在表:DEVICE_IP_ADDRESS,对于列… 我使用org.hibernate.dialect.PostgreSQLDialect和hbm.xml配置文件。 我的hibernate映射文件: 我问谷歌,但我找不到任何有用的解决方案。 你可以帮帮我吗? 谢谢! 编辑:如果我想使用’额外’postgresql类型和PostGIS类型,你认为我需要使用什么样的ORM实现? 或者我需要使用简单的JDBC?

Hibernate在读取和写入Java Calendar对象到SQL TIMESTAMP时使用的时区是什么?

当Hibernate 将 Java Calendar对象写入 SQL TIMESTAMP列时,它会调整日期,计算机的日期或日历对象(或其他)中指定的日期? 当Hibernate 将 TIMESTAMP 读入日历对象时,它会将日期转换到哪个时区?

如何从querydsl获得完全具体化的查询

我正在尝试使用querydsl为动态模式构建动态查询。 我试图获得只是查询而不必实际执行它。 到目前为止,我遇到了两个问题: – schema.table符号不存在。 相反,我只获得表名。 – 我已经能够得到查询但是它将变量分开并放入’?’ 相反,这是可以理解的。 但我想知道是否有某种方法可以获得完全具体化的查询,包括参数。 这是我当前的尝试和结果(我使用MySQLTemplates来创建配置): private SQLTemplates templates = new MySQLTemplates(); private Configuration configuration = new Configuration(templates); String table = “sometable” Path userPath = new PathImpl(Object.class, table); StringPath usernamePath = Expressions.stringPath(userPath, “username”); NumberPath idPath = Expressions.numberPath(Long.class, userPath, “id”); SQLQuery sqlQuery = new SQLQuery(connection, configuration) .from(userPath).where(idPath.eq(1l)).limit(10); String query = sqlQuery.getSQL(usernamePath).getSQL(); […]

在hibernate createSQlquery结果中使用sql列名

我有几个我想要查询的复合主键的sql视图,而且由于Hibernate使用复合键很难,我使用的是createSQLQuery 。 问题是这个方法只能返回一个List,我需要通过索引来引用colums。 我有可能做一些像jdbc这样的事情并通过他们的sql名称而不是他们的索引来引用列吗?

Hibernate SQL查询结果映射/转换为对象/类/ Bean

1 2:select(table。*)/(all column)没问题 String sql = “select t_student.* from t_student”; //String sql = “select t_student.id,t_student.name,… from t_student”; //select all column SQLQuery query = session.createSQLQuery(sql); query.addEntity(Student.class);//or query.addEntity(“alias”, Student.class); //query.list();[Student@…, Student@…, Student@…] query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP); //or other transformer query.list(); //[{Student(or alias)=Student@…},{Student=Student@…}] 3:选择一些列(不是全部),是错误 String sql = “select t_student.id,t_student.name.t_student.sex from t_student”; SQLQuery query = session.createSQLQuery(sql); query.addEntity(Student.class); query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP); query.list(); //Exception:invalid column/no column […]

如何检查结果集是否有一行或更多行?

如何使用JDBC检查结果集是否有一行或更多行?

SQLException:列名无效……?

我有一个JSP文件,我在Eclipse,Maven和Tomcat的帮助下在Java项目中部署。 我有一些其他几乎与此相同的JSP文件,尽管它们运行不同的操作。 无论如何,当我进入页面时,我已经给出了这个: org.apache.jasper.JasperException: An exception occurred processing JSP page /entertime2.jsp at line 106 103: rsBug = psBug.executeQuery(); 104: 105: while(rsBug.next()) { 106: Bug b = new Bug(rsBug); 107: out.println(“” + b.get(Bug.TITLE) + “”); 108: } 109: rsBug.close(); root cause javax.servlet.ServletException: java.sql.SQLException: Invalid column name ixPersonOpenedBy. Bug是一个自定义类,可以接收结果集 – rsBug – 并执行以下操作: setValue(Bug.BUG_ID,rs.getString(Bug.BUG_ID)); setValue(Bug.PERSON_OPENED_BY,rs.getString(Bug.PERSON_OPENED_BY)); setValue(Bug.PERSON_ASSIGNED_TO,rs.getString(Bug.PERSON_ASSIGNED_TO)); setValue(Bug.TITLE, […]

exceptionjava.sql.SQLException:参数索引超出范围(1>参数个数,为0)

我收到这个错误: Exception java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0). java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0). at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926) at com.mysql.jdbc.PreparedStatement.checkBounds(PreparedStatement.java:3288) at com.mysql.jdbc.PreparedStatement.setInternal(PreparedStatement.java:3272) at com.mysql.jdbc.PreparedStatement.setString(PreparedStatement.java:4108) at com.inmobia.RSSToNews.Consumer.print(Consumer.java:92) at com.inmobia.RSSToNews.Consumer.main(Consumer.java:122) 当我尝试执行这个类时: package com.in.RSSToNews; import java.net.URL; import java.util.ArrayList; import java.util.Date; […]

从Java批量插入Oracle

我需要在Oracle中快速插入许多小行。 (5个领域)。 使用MySQL,我将插入分成100个组,然后对每组100个插入使用一个insert语句。 但是对于Oracle,用户反馈是质量插入(1000-30000之间)太慢。 有没有类似的技巧可以用来加速从Java到Oracle的程序化插入?

如何在Hibernate HQL中使用Oracle的regexp_like?

我正在使用oracle 10g和hibernate 3.3.2 。 我以前在sql中使用过正则表达式,现在我第一次在HQL中使用它。 Query query = getSession().createQuery(“From Company company where company.id!=:companyId and regexp_like(upper(rtrim(ltrim(company.num))), ‘^0*514619915$’ )”); 这是我的hql,当我运行它没有regex_like函数时,它按预期运行。 但我无法使用regex_like表达式执行它。 它说.. 嵌套exception是org.hibernate.hql.ast.QuerySyntaxException:意外的AST节点:(靠近第1行,第66列…… 请帮助,如何在hibernate本机查询中使用regex_like ? 或其他一些替代方法。