[英]mysql stored procedure call works manually, but not from java
我正在從Java調用mysql存儲過程,如下所示:
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;
}
});
無法成功刪除產品; 但是,當我手動運行它時,它確實可以。 知道可能是什么問題嗎?
ps存儲過程很大,並且包含可識別的信息,因此我沒有隨意發布它的權利。 但是,它已經投入生產了一段時間,直到最近才停止工作。
country
和someId
實際上正確嗎? SQLException
說什么? Connection con = session.connection();
? Int
而不是String
)?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.