SQLは影響を受けるローの数を返します
814 ワード
最近、データベースの削除操作が成功したかどうかを知る機能があります.私はデータベースを操作した後、影響を受けた行数を取得すればいいと思います.成功すれば、影響を受けた行数を返すからです.
でもどうやって手に入れますか?
(1)hibernateTemplate()の使用
上のコードはobjectオブジェクトを返し、intタイプに変換すれば影響を受ける行数です.
(2)temaplate.save()
追加するオブジェクトを取得したidがnullであるか否かを判断することもでき、追加前のidがnullである追加後にidが自動的に値を取得するので、追加に成功したか否かを判断することもできる
(ここでいう自動はデータベース設定id自動インクリメント)
(3)executenonQuery()
この方法は私が検証していない.
でもどうやって手に入れますか?
(1)hibernateTemplate()の使用
template.executeFind(new HibernateCallback() {
@Override
public Object doInHibernate(Session session) throws HibernateException,
SQLException {
Query query = session.createQuery("from PurchaseRecords where PRODUCT_ID =:id1 and USER_CODE =:code");
query.setParameter("id1", productId);
query.setParameter("code", usercode);
return query.list();
}
});
上のコードはobjectオブジェクトを返し、intタイプに変換すれば影響を受ける行数です.
(2)temaplate.save()
追加するオブジェクトを取得したidがnullであるか否かを判断することもでき、追加前のidがnullである追加後にidが自動的に値を取得するので、追加に成功したか否かを判断することもできる
(ここでいう自動はデータベース設定id自動インクリメント)
(3)executenonQuery()
この方法は私が検証していない.