0

テーブルまたはフィールド名を使用せずに、特定のフィールドがSQL サーバーの日付よりも小さい場合に、一連のレコードを削除する方法がわかりません。

私は MSSQL を使用しているので、クエリは次のようになります。

DELETE FROM tickets WHERE expires < getdate()

Hibernateにこれをさせるにはどうすればよいですか?HQL を調べていますが、指定する方法がわかりませんgetdate()

4

2 に答える 2

0

おそらく、名前付き SQL クエリを定義する必要があります。

<sql-query name="DeleteExpiredTickets">
 DELETE FROM tickets WHERE expires < getdate()
</sql-query>

次に呼び出します。

session.getNamedQuery("DeleteExpiredTickets").executeUpdate();
于 2009-05-24T21:33:39.497 に答える
0

query.substitutions 構成を使用できると思います。この投稿と回答のリンクを見てください。

HQL または Criteria で DATEPART を取得していますか?

于 2009-05-24T21:28:19.180 に答える