Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistem Platform Analitik (PDW)
Titik akhir analitik SQL di Microsoft Fabric
Gudang di Microsoft Fabric
Database SQL 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.
Syntax
BEGIN
{ sql_statement | statement_block }
END
Arguments
{ sql_statement | statement_block }
Setiap pernyataan Transact-SQL atau pengelompokan pernyataan yang valid seperti yang didefinisikan dengan menggunakan blok pernyataan.
Remarks
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.
Examples
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;