Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何编写php代码_Java_Sql_Hibernate_Oracle10g - Fatal编程技术网

Java 如何编写php代码

Java 如何编写php代码,java,sql,hibernate,oracle10g,Java,Sql,Hibernate,Oracle10g,我通过基于列公文包的数据库获取记录时遇到此异常 查询: String queryString= "select entity from " +Name + " entity WHERE entity."+Column+" = "+ searchId.toString(); Query query = _em.createQuery(queryString); 这里有很多错误,很多重要信息丢失(实体代码?) 在您的示例中,className应该是Portfolio而不是class c

我通过基于列公文包的数据库获取记录时遇到此异常
查询:

String queryString=    "select entity  from   " +Name + " entity WHERE entity."+Column+" = "+ searchId.toString();
Query query = _em.createQuery(queryString);

这里有很多错误,很多重要信息丢失(实体代码?)

  • 在您的示例中,
    className
    应该是
    Portfolio
    而不是
    class com.hexgen.orm.Portfolio
    (假设
    Portfolio
    是实体的名称,不必与类名相同)。如果您正在使用
    someEntity.getClass().getName()
    获取它,请更改为
    someEntity.getClass().getSimpleName()
  • searchColumn
    应该是
    Portfolio
    类的字段名,而不是数据库中的列名。假设
    PORTFOLIO
    列映射到
    PORTFOLIO
    字段,它应该是
    PORTFOLIO

    String queryString=“从“+simpleClassName+”实体中选择实体,其中实体“+searchColumn+”=:searchId”;
    Query Query=\u em.createQuery(queryString);
    setParameter(“searchId”,searchId.toString())

  • 如果不切换到使用查询参数,
    searchId.toString()
    应该用单引号括起来

  • 因此,有效的查询应该如下所示

    select entity from Portfolio entity WHERE entity.portfolio = 'HEXAGON20'
    

    您的查询语法中有几个问题,如果您查看消息,它非常明确: 您可以使用

    "select entity  from   " +className + " entity WHERE entity."+searchColumn+" = "+ searchId.toString();
    

    select entity from class com.hexgen.orm.Portfolio entity WHERE entity.PORTFOLIO = HEXAGON20
    
    1-不应存在
    。Ir看起来像来自变量
    className


    2-
    HEXAGON20
    是一个字符串值,应该是
    'HEXAGON20'

    您可以发布出错的sql字符串吗?还要发布实体bean类。