PostgreSQL adalah sebuah sistem database relasional objek, dan merupakan salah satu basis data yang paling banyak digunakan saat ini, selain MySQL dan Oracle. Walaupun dikembangkan secara open-source, namun ia mendukung sebagian besar standar Structured Query Language (SQL) Show SQL terdiri dari Data Definition Language (DDL), Data Manipulation Language (DML), Data Control Language (DCL), dan Transaction Control Language. Commit, Rollback dan Save Point di PostgreSQL adalah 3 contoh Query dari Transaction Control Language (TCL) yang umum digunakan oleh DBA Developer dalam memanage sistem database.
Commit, Rollback dan Save Point merupakan fungsi yang digunakan untuk melakukan restore data ke kondisi awal sebelum dilakukan perubahan data. Berikut adalah basic demonstrasi dari Commit, Rollback dan Save Point di PostgreSQL: Dengan menggunakan COMMIT, kita dapat mengakhiri semua transaksi dan menjadikannya sebagai perubahan permanen. CommitDengan menggunakan ROLLBACK, kita bisa melompat ke keadaan terakhir dari sebuah transaksi yang telah di-commit sehingga update query berikut tidak akan tercatat di dalam transaksi. Rollback QuerySelain melompat ke commit terakhir dari sebuah transaction, Rollback juga dapat digunakan melompat ke suatu titik tertentu yang didefinisikan didalam Savepoint. Savepoint menetapkan savepoint baru dalam transaksi saat ini. Sebuah savepoint adalah tanda khusus di dalam transaksi yang memungkinkan semua perintah yang dijalankan setelah dibuat untuk di Rollback, mengembalikan status transaksi ke keadaan pada saat savepoint. Savepoint hanya bisa terbentuk saat berada di dalam blok transaksi. Ada beberapa savepoint yang dapat didefinisikan di dalam transaksi. SavePoint QueryRollback to SavePoint Query. Dengan menggunakan Query berikut maka update query dibawah tidak akan tercatat di dalam transaksi. Berikut adalah hasil akhir isi dari table Pegawai dimana kolom empid 2 dan 5 tidak terupdate karena Query Rollback.
Demikian contoh-contoh demonstrasi dasar dari Commit, Rollback dan Save Point pada PostgreSQL. Ingin belajar lebih lanjut tentang tips dan trik berkaitan dengan PostgreSQL? Anda bisa mengikuti PostgreSQL Complete Administration Training yang disediakan oleh i3. Untuk info lebih lengkap mengenai training yang tersedia di i3, Anda dapat menghubungi langsung tim sales kami melalui halaman Contact Us. Tentang i3PT. Inovasi Informatika Indonesia (i3) dikenal sebagai perusahaan penyedia solusi dan layanan TI yang berfokus pada Open Source, Security, Big Data dan Cloud bagi bisnis. i3 menyediakan layanan TI yang komprehensif, meliputi konsultasi, migrasi dan implementasi, pelatihan, troubleshooting, dan managed services. Untuk informasi lebih lanjut perihal layanan dan solusi yang ditawarkan, Anda dapat menghubungi kami melalui [email protected]. A Transaction contains a set of SQL commands used to change the data in the dataset. If we say transaction, it means that the data in the database has changed. It is used to change the database from one consistent state to another. It is a logical set of instructions to modify or change the dataset and maintain its consistency. A transaction can be understood with an example if we want to withdraw money from account X and deposit it in account Y, then this can be a transaction. A transaction is made up of ACID property, and these four properties are:
Python provides two methods to perform transactions which are commit and rollback. Steps to perform transactions in Python MySQL
Python commit () methodThe python commit() method is used to maintain the database’s consistency. In the database, if any changes occur in the transaction, then it must be consistent; for that, we use the commit method. The method will send a COMMIT statement to the MySQL server, which then commits the current transaction. When execution of the query is successful, it makes permanent changes in a database using the commit() of the connection class. The syntax for commit() method is given below:
Any operation that we perform in a transaction to modify the database will not occur until we don’t call the commit method. Python rollback() methodThe Python rollback() method is used if any of the queries in the transaction doesn’t get executed or fail. In that case, we use the rollback method. The syntax for rollback() method is given below:
Python autoCommit() methodIt is used to enable or disable the value of auto-commit as true or false. By default, its value is taken as False. The syntax for autoCommit() method is given below:
In the python DB-API, we perform transaction processing through the connection object model. We will invoke begin() to begin the transaction in the database and after that, we can use commit or rollback to end it. The begin() call and the commit() call goes into the same block whereas the rollback() block goes into the corresponding except block which will cancel the transaction if any error occurs. Let’s understand with an example. In this transaction we will withdraw and deposit money from one person to another. |