MULAI... END (SQL Bertransaksi)
Berlaku untuk:
SQL Server (semua versi yang didukung)
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Menyertakan serangkaian pernyataan SQL Transact sehingga sekelompok pernyataan SQL Transact dapat dijalankan. BEGIN dan END adalah kata kunci bahasa kontrol aliran.
Sintaks
BEGIN
{ sql_statement | statement_block }
END
Catatan
Untuk melihat sintaks transact-SQL untuk SQL Server 2014 dan yang lebih lama, lihat Dokumentasi versi sebelumnya.
Argumen
{ sql_statement | statement_block }
Adalah pernyataan transact-SQL atau pengelompokan pernyataan yang valid seperti yang didefinisikan dengan menggunakan blok pernyataan.
Keterangan
MULAI... Blok END dapat ditumpuk.
Meskipun semua pernyataan transact-SQL valid dalam BEGIN ... Blok END, pernyataan SQL Transact tertentu tidak boleh dikelompokkan bersama dalam batch yang sama, atau blok pernyataan.
Contoh
Dalam contoh berikut, BEGIN dan END tentukan serangkaian pernyataan Transact-SQL yang dijalankan bersama-sama. BEGIN...END Jika blok tidak disertakan, kedua ROLLBACK TRANSACTION pernyataan akan dijalankan dan kedua PRINT pesan akan dikembalikan.
USE AdventureWorks2012
GO
BEGIN TRANSACTION
GO
IF @@TRANCOUNT = 0
BEGIN
SELECT FirstName, MiddleName
FROM Person.Person WHERE LastName = 'Adams';
ROLLBACK TRANSACTION;
PRINT N'Rolling back the transaction two times would cause an error.';
END;
ROLLBACK TRANSACTION;
PRINT N'Rolled back the transaction.';
GO
/*
Rolled back the transaction.
*/
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
Dalam contoh berikut, BEGIN dan END tentukan serangkaian pernyataan SQL yang berjalan bersama-sama. BEGIN...END Jika blok tidak disertakan, contoh berikut akan berada dalam perulangan berkelanjutan.
-- Uses AdventureWorks
DECLARE @Iteration Integer = 0;
WHILE @Iteration <10
BEGIN
SELECT FirstName, MiddleName
FROM dbo.DimCustomer WHERE LastName = 'Adams';
SET @Iteration += 1 ;
END;
Lihat juga
ALTER TRIGGER (Transact-SQL)
Bahasa Kontrol Flow (SQL Transact)
CREATE TRIGGER (Transact-SQL)
END (BEGIN... END) (Transact-SQL)
