これは私の必要条件です。私は同様のデータを持つ一連の行を持っています。私は最新のエントリのいくつかの列を更新したいと思います。だから私は、これは何このJava Hibernate:MySqlデータベースの最新のエントリを更新する
String hql = "UPDATE Studenttable T set T.timestamp=:time,T.Action=:action where T.StudentId=:studentId and T.teacherId=:TeacherId order by T.teacher_student_mapping_id DESC";
Query query = session.createQuery(hql);
query.setParameter("time",time);
query.setParameter("studentId", studentId);
query.setParameter("TeacherId", teacherId);
query.setParameter("action", action);
query.setMaxResults(1);
query.executeUpdate();
ように書き休止クエリを書かれていることが条件を満たした後、最新の行を返すすべての行を更新しています。代わりに、条件を満たす最新の行を取り出して更新したいと思っています。どうしたらいいですか?どんな援助も深く感謝しています。
P.S. teacher_student_mapping_idは、自動生成された値であり、プライマリキーでもあります。
時刻は現在の時刻です。
テーブルの意味を理解しようとしないでください。私は機密保持のために列の名前を変更しました。
これは「あなたはfrom句からの更新のためにターゲットテーブルを返すことができません」と返します。私は努力し続けます。 –