0
我從Java調用這樣一個MySQL存儲過程:MySQL存儲過程調用手工作品,而不是從Java
public void deleteMyProduct(final String country, final String someId) throws EntityDoesNotExistException {
getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(final Session session) {
session.clear();
Connection con = session.connection();
try {
CallableStatement cst = con.prepareCall("{call deleteProduct(?, ?)}");
cst.setString(1 , country);
cst.setString(2 , someId);
cst.execute();
cst.close();
}
catch(SQLException e){
logger.error("Error deleting product, someId: "+ someId, e);
}
return null;
}
});
這不是成功刪除產品;但是,當我手動運行它,它會。任何想法可能是什麼問題?
p.s.存儲過程非常大,幷包含可識別的信息,所以我不能隨意發佈它。然而,它已經在生產一段時間,直到最近才停止工作。
我會發布這個「答案」作爲問題的評論,但它似乎我需要更多的聲譽來做到這一點.. – atastrumf
我將如何查看SQLException?是的變量絕對正確。另外,我正在通過執行存儲過程來調試代碼 - 但我無法進入它。 –
我的意思是什麼跟,這是,如果你得到任何異常拋出,但如果你通過它調試,我想你會看到是否會發生.. – atastrumf