沒有返回的一切,我們從一系列的select語句JPA的findAll()在視圖
SELECT d.DLVRB_CD AS ID,
'DL_GROUP' AS GRP,
d.DLVRB_NM AS VALU,
NULL AS DFLT_VALU,
NULL AS DN
FROM DLVRB d
UNION ALL
SELECT m.MODF_CD AS ID,
'MD_SELECTION' AS GRP,
m.MODF_NM AS VALU,
NULL AS DFLT_VALU,
m.MODF_DN AS DN
FROM MODF m
UNION ALL
SELECT m.MODF_CD AS ID,
'MD_ALL' AS GRP,
m.MODF_NM AS VALU,
NULL AS DFLT_VALU,
m.MODF_DN AS DN
FROM MODF m
UNION ALL
SELECT v.VAR_CD AS ID,
'VA_GROUP' AS GRP,
v.VAR_NM AS VALU,
v.VAR_DFLT_QT AS DFLT_VALU,
NULL AS DN
FROM VAR v
,當我們嘗試使用JPA的findAll()方法返回查看的內容後來的創建視圖。它缺少一些數據。特別是缺少MD_ALL組(這是代碼中的第三條語句)
正確生成視圖,因爲在每個select語句的數據中都正確顯示。只有在調用findAll()時,纔會選擇'MD_ALL'的數據。
有趣的是,如果我交換MD_SELECTION和MD_ALL語句,MD_ALL將在findAll()調用中返回,而不是在MD_SELECTION中返回。
findAll()在某些條件下省略數據嗎?
如何定義實體?它的ID是什麼?你確定視圖中的每一行都有不同的ID嗎? –
該Id的不明顯沒有。正如在MD_Selection和MD_ALL的ID一樣。 findAll()只會返回不同的值嗎? – Newmanater
然後你有你的答案。實體由其ID標識。因此,相同類型的兩個不同實體可能沒有相同的ID –