Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.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
打开JPA结果集映射_Jpa_Sqlresultsetmapping - Fatal编程技术网

打开JPA结果集映射

打开JPA结果集映射,jpa,sqlresultsetmapping,Jpa,Sqlresultsetmapping,我有一个名为order的实体,它包含10列,还有嵌入的id(复合键)列,其中包含实体顺序中的5个字段 这是我的sql查询 <named-native-query name="OrderQuery" result-set-mapping="OrderQueryResultSetMapping"> <query> <![CDATA[SELECT t0.colum2, t0.column4, to.embededid.colum3, e mbededid.co

我有一个名为order的实体,它包含10列,还有嵌入的id(复合键)列,其中包含实体顺序中的5个字段

这是我的sql查询

<named-native-query name="OrderQuery" result-set-mapping="OrderQueryResultSetMapping">
  <query>
    <![CDATA[SELECT t0.colum2, t0.column4, to.embededid.colum3, e mbededid.colum1, FROM order  t0 WHERE t0.orderid = ?1 ]]>
  </query>
</named-native-query>
我在查询执行中没有问题,但在
sqlResultSetMapping
中出现错误。我有以下错误

Exception in thread "main" <openjpa-2.4.0-r422266:1674604 fatal general error> 
org.apache.openjpa.persistence.PersistenceException: [jcc][t4][10145][10897]
[3.58.81] Invalid parameter 0: Parameter index is out of range. ERRORCODE=-4461, SQLSTATE=42815
线程“main”中出现异常 org.apache.openjpa.persistence.PersistenceException:[jcc][t4][10145][10897] [3.58.81]无效的参数0:参数索引超出范围。ERRORCODE=-4461,SQLSTATE=42815
我们能做这种映射吗?如果是这样,客户端如何知道作为此查询的一部分,订单实体填充了哪些列?

好的,您可能已经自己解决了这个问题,但您的查询中存在一些输入错误:

  • to.embeddedId.column3
    可能应该是
    to.embeddedId.column3
    (这就是它在映射中的名称,否则应该在映射中更改它)
  • SELECT在FROM之前以逗号结束,这是无效的SQL
  • 您的映射有
    name=“column4”1column=“column\u 1”
    ,1不应该在那里
Exception in thread "main" <openjpa-2.4.0-r422266:1674604 fatal general error> 
org.apache.openjpa.persistence.PersistenceException: [jcc][t4][10145][10897]
[3.58.81] Invalid parameter 0: Parameter index is out of range. ERRORCODE=-4461, SQLSTATE=42815