Я удалил запись из своей таблицы, и после выполнения команды отката он показывает, что «команда завершена успешно», но когда я проверяю ее с помощью оператора select, таблица по-прежнему выглядит пустой? Зачем ? Как отменить транзакцию с помощью команды отката?
ответ
Некоторые методы подключения к базе данных, такие как ODBC по умолчанию, так называемые "autocommit" mode, то есть соединение с базой данных автоматически выдает COMMIT после выполнения каждого оператора. JDBC does the same thing. Я не могу сказать, если это то, что происходит в вашем случае, но если так, то нет возможности сделать ROLLBACK. Удачи.
Команда отката возвращает вас к последнему зафиксированному состоянию таблицы. Я полагаю, что ваш запрос на удаление мог содержать некоторый оператор, который совершил изменение (удаление записи).
это означает, что я могу отменить мою транзакцию до того, как я запустил команду Commit? –
Да, вы можете. Но, как @BobJarvis сказал, что в некоторых случаях включен режим «autocommit». Следовательно, после того, как вы удалили запись, возможно, изменения были совершены и, следовательно, вы не можете отменить изменение с помощью команды отката. – VishalProgrammer
Джейсон Кларк,
Я сделал тест, используя MySql и использовать "начать", "удалить" и "откат", используется следующий SQL (пример):
начала; удалить из aluno, где id = 1; откатить;
В PostgreSQL синтаксис SQL одинаков и работает.
Вы уверены, что используете правильный SQL? Возможно, я ошибся? Действительно ли нужно использовать «начать транзакцию» вместо «начать»?
Надеюсь, это поможет!
- 1. GAE: Как отменить транзакцию?
- 2. Откат CMT: как отменить транзакцию
- 3. Как отменить транзакцию на Android?
- 4. Как отменить транзакцию движка Google с помощью веб-интерфейса?
- 5. Невозможно выполнить транзакцию отката в Zend Framework
- 6. Начать новую транзакцию в середине отката
- 7. Как отменить транзакцию в Date Entity Framework
- 8. Как убить или отменить активную транзакцию?
- 9. Как отменить транзакцию в Entity Framework
- 10. Как отменить транзакцию в Laravel 5.3?
- 11. Как отменить транзакцию, которая уже была совершена?
- 12. Как я могу отменить запущенную транзакцию JDBC?
- 13. Как использовать транзакцию весны для отката изменений при проверке исключения?
- 14. Ошибка сети. Метаданные отката
- 15. Как я могу принудительно отменить dockerbuild с помощью команды bash?
- 16. Как условно отменить транзакцию с использованием PG Ruby Gem
- 17. Entity Framework 7 Метод отката
- 18. Как шаблон команды позволяет отменить?
- 19. Выполнение транзакции отката в WP7
- 20. Отменить длительный запрос или транзакцию в firebird
- 21. Не удается получить транзакцию SQL Server 2012 для отката
- 22. Как отменить запрос sql, который был выполнен без отката
- 23. «Невозможно отменить транзакцию» ошибку в Neo4j
- 24. paypal отменить транзакцию через торговца API
- 25. Отката конкретных, старший SQL транзакция
- 26. Не удалось отменить транзакцию с использованием шаблона Hibernate
- 27. Отменить пользовательские настройки команды git
- 28. Как проверить валидацию отката?
- 29. Включить Добавить/Отменить кнопку с помощью WPF команды
- 30. Как отменить результат из команды перемещения?
Показать запрос, который вы получили, включая начало и откат транзакции – Luc
Как вы выполняете запрос и транзакцию? Через клиентское приложение, такое как VB? И какая у вас платформа SQL? MySQL, SQL Server ...? – itsols
Я выполняю на SQL Server и транзакцию, выполненную с помощью команды BEGIN Transaction –