Bagaimanakah pengguna boleh menamatkan transaksi MySQL semasa secara tersirat?

WBOY
Lepaskan: 2023-08-29 22:57:02
ke hadapan
837 orang telah melayarinya

用户如何隐式结束当前的 MySQL 事务?

Berikut adalah cara untuk menamatkan transaksi MySQL semasa secara tersirat -

Dengan menjalankan penyata DDL

Transaksi MySQL semasa akan ditamatkan secara tersirat dan akan ditamatkan dengan menjalankan mana-mana pernyataan DDL seperti CREATE atau DROP pangkalan data, Buat, ALTER atau DROP jadual atau rutin yang disimpan) untuk melakukan perubahan. Ini kerana, dalam MySQL, pernyataan ini tidak boleh digulung semula.

Contoh

mysql> START TRANSACTION; Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO MARKS Values(3,'gaurav','Comp',69); Query OK, 1 row affected (0.26 sec) mysql> Create table student(id int, Name Varchar(10),); Query OK, 0 rows affected (0.84 sec)
Salin selepas log masuk

Di antara urus niaga kami menjalankan penyata DDL, jadi urus niaga akan tamat secara tersirat. MySQL akan menyimpan semua perubahan dan tidak boleh kembali. Kita boleh memerhatikannya dengan bantuan set hasil berikut -

mysql> Rollback; Query OK, 0 rows affected (0.00 sec) mysql> select * from marks; +------+---------+-----------+-------+ | Id | Name | Subject | Marks | +------+---------+-----------+-------+ | 1 | Aarav | Maths | 50 | | 1 | Harshit | Maths | 55 | | 3 | Gaurav | Comp | 69 | +------+---------+-----------+-------+ 3 rows in set (0.00 sec)
Salin selepas log masuk

Dengan memutuskan sambungan sesi pelanggan

Memutuskan sambungan sesi pelanggan akan secara tersirat menamatkan sesi semasa, dalam hal ini perubahan akan ditarik balik.

Dengan menamatkan sesi pelanggan < /h2>

Menamatkan sesi pelanggan juga secara tersirat akan menamatkan sesi semasa, dalam hal ini perubahan juga akan ditarik balik.

Melalui arahan START TRANSACTION

Pada masa ini jika kita menjalankan arahan START TRANSACTION, transaksi akan tamat secara tersirat. Dalam kes ini, perubahan akan dilakukan.

Contoh

mysql> START TRANSACTION; Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO Marks Values(4, 'Rahul','History',40); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO Marks Values(5, 'Yashraj','English',48); Query OK, 1 row affected (0.00 sec) mysql> START TRANSACTION; Query OK, 0 rows affected (0.00 sec)
Salin selepas log masuk

Dalam contoh ini, penyata MULA TRANSAKSI akan secara tersirat menamatkan urus niaga dan melakukan perubahan.

rreeee

Atas ialah kandungan terperinci Bagaimanakah pengguna boleh menamatkan transaksi MySQL semasa secara tersirat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!