4

こんにちは私はそのentityClassSptTutorialsのオブジェクトを与えることによってテーブルspt_tutorialsからレコードを削除したいと思います。私はこのような名前付きクエリを書いています。

@NamedQuery(name = "SptTutorials.deleteVideo", query = "DELETE s FROM SptTutorials s WHERE s.SptTutorials = :SptTutorials")})

ここで、SptTutorialsはエンティティクラスであり、WHERE句を介して渡すパラメータはSptTutorialsオブジェクトです。このクエリは正しいですか。

4

1 に答える 1

6

「SptTutorials」はSptTutorialsのフィールドではないため、クエリを修正してください。「s.SptTutorials」は、オブジェクト「s」(タイプSptTutorials)のフィールド「SptTutorials」を意味します。多分

DELETE FROM SptTutorials s WHERE s = :param

また

DELETE FROM SptTutorials s WHERE s.id = :id

ここで、「id」は、削除するSptTutorialsオブジェクトのID(フィールド)です。これらはすべて、JPA仕様のクイックリード、またはオンラインの多くのJPAドキュメントのいずれかで確認できます。

于 2012-05-14T14:09:59.613 に答える