@@PROCID (T-SQL)

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceDatabase SQL di Microsoft Fabric

Mengembalikan pengidentifikasi objek (ID) dari modul Transact-SQL saat ini. Modul Transact-SQL dapat berupa prosedur tersimpan, fungsi yang ditentukan pengguna, atau pemicu. @@PROCID tidak dapat ditentukan dalam modul CLR atau penyedia akses data dalam proses.

Konvensi sintaks transact-SQL

Sintaks

@@PROCID  

Jenis Kembalian

int

Contoh

Contoh berikut menggunakan @@PROCID sebagai parameter input dalam OBJECT_NAME fungsi untuk mengembalikan nama prosedur tersimpan RAISERROR dalam pesan.

Note

Di Azure SQL Database dan SQL database di Microsoft Fabric, pernyataan tersebut USE tidak tersedia. Sebaliknya, hubungkan langsung ke database yang dimaksud dan jalankan sisa kode sampel.

USE AdventureWorks2022;  
GO  
IF OBJECT_ID ( 'usp_FindName', 'P' ) IS NOT NULL   
DROP PROCEDURE usp_FindName;  
GO  
CREATE PROCEDURE usp_FindName  
    @lastname VARCHAR(40) = '%',   
    @firstname VARCHAR(20) = '%'  
AS  
DECLARE @Count INT;  
DECLARE @ProcName NVARCHAR(128);  
SELECT LastName, FirstName  
FROM Person.Person   
WHERE FirstName LIKE @firstname AND LastName LIKE @lastname;  
SET @Count = @@ROWCOUNT;  
SET @ProcName = OBJECT_NAME(@@PROCID);  
RAISERROR ('Stored procedure %s returned %d rows.', 16,10, @ProcName, @Count);  
GO  
EXECUTE dbo.usp_FindName 'P%', 'A%';