არის DML Autocommit?
არის DML Autocommit?

ვიდეო: არის DML Autocommit?

ვიდეო: არის DML Autocommit?
ვიდეო: MySQL: AUTOCOMMIT, COMMIT, ROLLBACK 2024, ნოემბერი
Anonim

ნაგულისხმევად, ა DML ტრანზაქციის მკაფიოდ დაწყების გარეშე შესრულებული განცხადება ავტომატურად ჩადენილია წარმატებულად ან აბრუნებს წარუმატებლობას ამონაწერის ბოლოს. ამ ქცევას ჰქვია ავტოკომიტირება . ეს ქცევა კონტროლდება AUTOCOMMIT პარამეტრი.

აქედან გამომდინარე, არის თუ არა DDL ავტოკომიტი?

SQL განცხადება შესრულებულია ავტოკომიტირება რეჟიმის უკან დაბრუნება შეუძლებელია. ყველაზე მეტი DBMS (მაგ. MariaDB) ძალა ავტოკომიტირება ყველასთვის DDL განცხადება თუნდაც უაზრო- ავტოკომიტირება რეჟიმი. მანამდე DDL ამონაწერი startsprevious DML განცხადებები ტრანზაქციაში არის (ავტომატური) ჩადენილი. თითოეული DDL შესრულებულია საკუთარ ახალში ავტოკომიტირება გარიგება.

გარდა ამისა, არის SQL Server Autocommit? ავტოკომიტირება რეჟიმი არის ტრანზაქციის მართვის ნაგულისხმევი რეჟიმი SQL სერვერი მონაცემთა ბაზის ძრავა. ყოველი ტრანზაქცია - SQL განცხადება არის ჩადენილი ან უკან დაბრუნებული, როდესაც ის დასრულდება.

ამ გზით, შეიძლება თუ არა DML განცხადებების უკან დაბრუნება?

ეფექტი ა DML განცხადება არ არის მუდმივი, სანამ არ განახორციელებთ ტრანზაქციას, რომელიც მას მოიცავს. ტრანზაქცია არის SQL-ის თანმიმდევრობა განცხადებები რომ Oracle Database განიხილავს როგორც ერთეულს (ის შეუძლია იყავი მარტოხელა DML განცხადება ). სანამ არ მოხდება ტრანზაქცია, ის შეუძლია იყოს შემოვიდა უკან (გაუქმებულია).

truncate მოითხოვს commit-ს?

და საკვანძო მომენტი - თუმცა შეკვეცილი TABLE ჰგავს DELETE-ს WHERE პუნქტის გარეშე, შეკვეცილი არ არის DML, არის DDL. წაშლა მოითხოვს ა ჩადენა , მაგრამ TRUNCATE აკეთებს არა.

გირჩევთ: