Хранимая процедура удаляется при отладке. Но это не работает (данные не вставляются в базу данных)

0

Это код, в котором я вызываю хранимую процедуру в mysql.

public void createWallet(String number) {
    Query query= getSession().createSQLQuery("CALL createWalletForOrigin(:string_number)").addEntity(Wallet.class)
    .setParameter("string_number", number);

}

И послушайте мою хранимую процедуру

CREATE DEFINER='root'@'localhost' PROCEDURE 'createWalletForOrigin'(IN string_number varchar(19))
BEGIN
insert into wallet values(string_number,0);
END

Я не могу понять, почему это не выполняется. Когда я отлаживаю метод, он успешно вызывает вызов.

  • 0
    это все содержание метода createWallet ? если да, то вам не хватает сессии db и query.executeUpdate()
Теги:
maven
spring

1 ответ

0
Лучший ответ

Похоже, вы не совершаете транзакцию.

getSession().createSQLQuery(sql).executeUpdate();
getSession().getTransaction().commit();

Взгляните на этот вопрос здесь для более подробного объяснения.

  • 0
    Это настоящая причина. Большое спасибо за помощь в выяснении проблемы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню