MULAI... END (Transact-SQL)
Berlaku untuk: Titik akhir analitik SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Platform System (PDW) SQL di Microsoft Fabric Warehouse di Microsoft Fabric
Menyertakan serangkaian pernyataan Transact-SQL sehingga sekelompok pernyataan Transact-SQL dapat dijalankan dalam blok kode logis. BEGIN
dan END
merupakan kata kunci bahasa kontrol aliran.
Sintaks
BEGIN
{ sql_statement | statement_block }
END
Argumen
{ sql_statement | statement_block }
Setiap pernyataan Transact-SQL atau pengelompokan pernyataan yang valid seperti yang didefinisikan dengan menggunakan blok pernyataan.
Keterangan
BEGIN...END
blok dapat ditumpuk.
Meskipun semua pernyataan Transact-SQL valid dalam blok BEGIN...END
, pernyataan Transact-SQL 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 AdventureWorks2022;
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
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 berjalan dalam perulangan berkelanjutan.
-- Uses AdventureWorksDW
DECLARE @Iteration INT = 0;
WHILE @Iteration < 10
BEGIN
SELECT FirstName,
MiddleName
FROM dbo.DimCustomer
WHERE LastName = 'Adams';
SET @Iteration += 1;
END;