我有以下問題:我正在加載一個只有刪除和插入的「dif」表。 「更改」由刪除後跟插入確定。表中的行的順序
此表沒有主鍵,也沒有字段可以排序。我想用Hibernate來加載這個表。 (SELECT obj FROM MyDifTable obj WHERE obj.group = groupId
)
現在,我在所有值和上面的查詢中使用了一個鍵,而且我沒有按照與源表中相同的順序獲取行。
我的問題是:
- 如何讓Hibernate總是返回相同的順序在表中?
- 如何在這種情況下指定主鍵?
我知道這是這樣一個設計糟糕的事情,我試圖論證與設計團隊,但沒有成功。
最好的問候, 凱
請記住,通常'SELECT'沒有'ORDER BY'不能保證返回行的順序。考慮到這一點,要求*「與表格中的順序相同」*是可疑的。 – NPE 2012-02-23 14:59:54
由於aix已經指出:(關係)表中的行確實沒有任何順序**。確保訂單順序的唯一方法是使用'ORDER BY' – 2012-02-23 15:02:03
記住以前的註釋。通常,您的特定數據庫引擎會具有某種「row_id」屬性,您可以使用它來給予某種排序。但以前的評論老是真實的。雖然語法依賴於引擎。 – pcalcao 2012-02-23 15:07:13