SQL Commit. Oracle

базы данных sql oracle

Всем привет. Делаю лабораторку по Oracle. Первая часть лабораторки проходила в командной строке (Run SQL Commant Line) и нам на занятиях говорили, что после каждого запроса или чего-то там еще нужно вводить команду COMMIT (иначе ничё не сохранится), ну я так и делала. Вторая часть лабораторки протекает в web интерфейсе. Вот я и думаю - нужен этот COMMIT или нет?
P.S. с базами данных имела дело только несколько раз, но насколько я помню по MySQL - commit там ваще не нужен.
Ответы:
ЗАвист от того, что такое этот "web интерфейс" Иногда бывают клиенты с автокоммитом, но вряд ли он конечно такой, скорее всего коммит и там нужен
Коммит нужен после DML команд, а не после каждой, те после insert delete update , после остальных не нужен, а если после DML- команд происходит какая-нибудь DDL-команда, то коммит будет произведен автоматически перед ее выполнением. После каждой команды тоже не нужно, можно сделать десяток-другой, потмо сказать коммит, зависит от необходимости. Просто пока не произойдет коммит, есть возможность отменить все изменения командой rollback
Впрочем, если у вас транзакция чтения или чтения и записи, то и после (или перед) селектов коммит может иметь значение.
Нормальное завершение клиентской программы (не через снятие ее таск менеджером) означает, что в вашей сессии все равно произойдет коммит при закрытии сессии нормальынм образом.


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.