java-javax.persistence.PersistenceException:org.hibernate.exception.GenericJDBCException:无法执行语句

问题描述 投票:-1回答:1

我试图按如下方式执行我的SQL语句:

public String get_value(long nodeid,String ts) {
        try {
            String sql="Select URL FROM urllink WHERE URL="+nodeid;
            em.createNativeQuery(sql).executeUpdate();
            if (em == null) {
                throw new Exception("could not found URL object.");
            }
          //  return 1;

        } catch (Exception e) {
            e.printStackTrace();



        }
       return null;
    }

它会抛出异常消息:

javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException:could not execute statement

当我调用executeUpdate()时。

我做错了什么吗?

编辑:我试图以这种格式传递URL参数:

http://126.32.3.11:8080/repository/file/view/viewPDF.jsp?f0=27491&ts=2019.03.20.16.50.58

并使用这些参数来检查它们是否存在于列中,如果是,则运行我的viewPDF.jsp

 public String get_value(long nodeid,String ts) {
        try {
            String sql="Select URL FROM urllink WHERE URL="+"'f0='"+nodeid+"'&ts='"+ts;
            em.createNativeQuery(sql).executeUpdate();
            if (em == null) {
                throw new Exception("could not found URL object.");
            }
          //  return 1;

        } catch (Exception e) {
            e.printStackTrace();



        }
       return null;
    }
java hibernate persistence
1个回答
2
投票

executeUpdate()用于更新和删除查询。

对于选择查询,请使用getResultList()getSingleResult()来检索结果

Query q = em.createNativeQuery(sql);
List<Object[]> result= q.getResultList();
© www.soinside.com 2019 - 2024. All rights reserved.