DML автокоммит болып табылады ма?
DML автокоммит болып табылады ма?

Бейне: DML автокоммит болып табылады ма?

Бейне: DML автокоммит болып табылады ма?
Бейне: 15 MySQL | DML | Delete | Commit | Rollback | Autocommit 2024, Сәуір
Anonim

Әдепкі бойынша, а DML транзакцияны нақты бастамастан орындалған мәлімдеме үзіндінің соңында автоматты түрде сәтті орындалады немесе сәтсіздікке байланысты кері қайтарылады. Бұл мінез-құлық деп аталады автокоммит . Бұл мінез-құлық арқылы басқарылады АВТОКОМИТЕТ параметр.

Сонымен, DDL автокоммит болып табылады ма?

орындалған SQL операторы автокоммит режимін кері айналдыру мүмкін емес. Көптеген ДҚБЖ (мысалы, MariaDB) күші автокоммит әрқайсысы үшін DDL тіпті бейтаныс мәлімдеме автокоммит режимі. Бұрын DDL мәлімдемесі транзакциядағы алдыңғы DML мәлімдемелері (автоматты түрде) орындалады. Әрбір DDL өз жаңасында орындалады автокоммит транзакция.

Сонымен қатар, SQL Server автоматты түрде орындалады ма? Автоматты орындау режимі әдепкі транзакцияны басқару режимі болып табылады SQL сервері Мәліметтер базасының қозғалтқышы. Әрбір транзакция- SQL мәлімдеме орындалады немесе ол аяқталғаннан кейін кері қайтарылады.

Осылайша, DML мәлімдемелері кері қайтарылуы мүмкін бе?

Әсері а DML мәлімдемесі оны қамтитын транзакцияны жасамайынша тұрақты емес. Транзакция – бұл SQL тізбегі мәлімдемелер Oracle дерекқоры бірлік ретінде қарастырады (ол алады бойдақ болу DML мәлімдемесі ). Транзакция жасалғанша, ол алады болуы кері айналды (қайтарылды).

Қысқарту міндеттемені талап ете ме?

Және негізгі нүкте - дегенмен ҚЫСҚАУ TABLE WHERE сөйлемі жоқ DELETE сияқты, ҚЫСҚАУ бұл DML емес, DDL. ЖОЮ талап етеді а МІНДЕТТЕУ , бірақ TRUNCATE жасайды емес.

Ұсынылған: