DDL командите автоматично ли се извършват?
DDL командите автоматично ли се извършват?

Видео: DDL командите автоматично ли се извършват?

Видео: DDL командите автоматично ли се извършват?
Видео: Калина красная (4К, драма, реж. Василий Шукшин, 1973 г.) 2024, Ноември
Anonim

е ( DDL ) Език за манипулиране на данни изявленияAutocommit ? Не. Само DDL (Език за дефиниране на данни) изявления като create, alter, drop, truncate са автоматично завършване.

Освен това, DML командите автоматично се извършват?

По подразбиране a DML изявление, изпълнено без изрично стартиране на транзакция, автоматично се ангажира при успех или се връща обратно при неуспех в края на оператора. Това поведение се нарича автоматично завършване . Това поведение се контролира с AUTOCOMMIT параметър. DDL изявления област винаги се извършва автоматично.

Впоследствие въпросът е какво е Autocommit в SQL? В контекста на управлението на данните, автоматично завършване е режим на работа на връзка с база данни. Алтернативата на автоматично завършване режим (не- автоматично завършване ) означава, че SQL Самото клиентско приложение е отговорно за издаването на команди за иницииране на транзакция (стартиране на транзакция) и прекратяване (отмяна на комитор).

Тогава DDL изисква ли ангажимент?

ОТСЪЩАНЕ е a DDL команда, така че не се нуждае от изрично ангажират защото извикването му изпълнява имплицитно ангажират . От гледна точка на системния дизайн транзакцията е бизнес единица работа. Може да се състои от един DML оператор или няколко от тях. Няма значение: само пълни транзакции изискват COMMIT.

Какво се случва, когато Autocommit е включен?

Ако AUTOCOMMIT е зададен до 1, всеки SQL оператор се счита за завършена транзакция и се ангажира по подразбиране, когато приключи. Ако AUTOCOMMIT е зададен до 0, следващите серии от оператори действат като транзакция и нито една транзакция не се извършва, докато не бъде издаден изричен оператор COMMIT.

Препоръчано: