Bagikan melalui


Transaksi (Transact-SQL)

Berlaku untuk:SQL ServerDatabase Azure SQLInstans Terkelola Azure SQLGudang di Microsoft FabricDatabase SQL di Microsoft Fabric

Transaksi adalah satu unit kerja. Jika transaksi berhasil, semua modifikasi data yang dilakukan selama transaksi dilakukan dan menjadi bagian permanen dari database. Jika transaksi mengalami kesalahan dan harus dibatalkan atau digulung balik, maka semua modifikasi data akan dihapus.

SQL Server beroperasi dalam mode transaksi berikut:

Mode transaksi Description
Transaksi autocommit Setiap pernyataan individu adalah transaksi.
Transaksi eksplisit Setiap transaksi secara eksplisit dimulai dengan BEGIN TRANSACTION pernyataan dan secara eksplisit diakhiri dengan pernyataan COMMIT atau ROLLBACK .
Transaksi implisit Transaksi baru secara implisit dimulai ketika transaksi sebelumnya selesai, tetapi setiap transaksi secara eksplisit diselesaikan dengan pernyataan COMMIT atau ROLLBACK .
Transaksi cakupan batch Hanya berlaku untuk beberapa set hasil aktif (MARS), transaksi eksplisit atau implisit Transact-SQL yang dimulai di bawah sesi MARS menjadi transaksi cakupan batch. Transaksi cakupan batch yang tidak diterapkan atau digulung balik ketika batch selesai secara otomatis digulung balik oleh SQL Server.

Untuk pertimbangan khusus yang terkait dengan produk gudang data, lihat Transaksi di Fabric Data Warehouse atau Transactions (Azure Synapse Analytics).

Sintaks kontrol transaksi

Mesin SQL Database menyediakan pernyataan transaksi berikut: