@@ROWCOUNT (T-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Mengembalikan jumlah baris yang dipengaruhi oleh pernyataan terakhir. Jika jumlah baris lebih dari 2 miliar, gunakan ROWCOUNT_BIG.

Konvensi sintaks transact-SQL

Sintaksis

@@ROWCOUNT  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Jenis Kembalian

int

Keterangan

Pernyataan T-SQL dapat mengatur nilai dalam @@ROWCOUNT dengan cara berikut:

  • Atur @@ROWCOUNT ke jumlah baris yang terpengaruh atau dibaca. Baris mungkin atau mungkin tidak dikirim ke klien.

  • Pertahankan @@ROWCOUNT dari eksekusi pernyataan sebelumnya.

  • Reset @@ROWCOUNT ke 0 tetapi jangan mengembalikan nilai ke klien.

Pernyataan yang membuat penugasan sederhana selalu mengatur nilai @@ROWCOUNT ke 1. Tidak ada baris yang dikirim ke klien. Contoh pernyataan ini adalah: SET @local_variable, RETURN, READTEXT, dan pilih tanpa pernyataan kueri seperti SELECT GETDATE() atau SELECT 'Generic Text'.

Pernyataan yang membuat penugasan dalam kueri atau menggunakan RETURN dalam kueri mengatur nilai @@ROWCOUNT ke jumlah baris yang terpengaruh atau dibaca oleh kueri, misalnya: SELECT @local_variable = c1 FROM t1.

Pernyataan bahasa manipulasi data (DML) mengatur nilai @@ROWCOUNT ke jumlah baris yang terpengaruh oleh kueri dan mengembalikan nilai tersebut ke klien. Pernyataan DML mungkin tidak mengirim baris apa pun ke klien.

DEKLARASIKAN KURSOR dan AMBIL atur nilai @@ROWCOUNT ke 1.

Pernyataan EXECUTE mempertahankan @@ROWCOUNT sebelumnya.

Pernyataan seperti USE, opsi> SET<, DEALLOCATE CURSOR, CLOSE CURSOR, PRINT, RAISERROR, BEGIN TRANSACTION, atau COMMIT TRANSACTION mengatur ulang nilai ROWCOUNT menjadi 0.

Prosedur tersimpan yang dikompilasi secara asli mempertahankan @@ROWCOUNT sebelumnya. Pernyataan Transact-SQL di dalam prosedur tersimpan yang dikompilasi secara asli tidak diatur @@ROWCOUNT. Untuk informasi selengkapnya, lihat Prosedur Tersimpan yang Dikompilasi Secara Asli.

Contoh

Contoh berikut menjalankan UPDATE pernyataan dan menggunakan @@ROWCOUNT untuk mendeteksi apakah ada baris yang diubah.

USE AdventureWorks2022;  
GO  
UPDATE HumanResources.Employee   
SET JobTitle = N'Executive'  
WHERE NationalIDNumber = 123456789  
IF @@ROWCOUNT = 0  
PRINT 'Warning: No rows were updated';  
GO  

Lihat Juga

Fungsi Sistem (Transact-SQL)
SET ROWCOUNT (Transact-SQL)