sp_addextendedproc (T-SQL)
Berlaku untuk: SQL Server
Mendaftarkan nama prosedur tersimpan baru yang diperluas ke SQL Server.
Catatan
Fitur ini akan dihapus dalam versi SQL Server yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Gunakan Integrasi CLR sebagai gantinya.
Sintaks
sp_addextendedproc
[ @functname = ] N'functname'
, [ @dllname = ] 'dllname'
[ ; ]
Argumen
[ @functname = ] N'functname'
Nama fungsi yang akan dipanggil dalam pustaka tautan dinamis (DLL). @functname adalah nvarchar(517), tanpa default. @functname secara opsional dapat menyertakan nama pemilik dalam formulir <owner.function>
.
[ @dllname = ] 'dllname'
Nama DLL yang berisi fungsi . @dllname adalah varchar(255), tanpa default. Anda harus menentukan jalur lengkap DLL.
Mengembalikan nilai kode
0
(berhasil) atau 1
(kegagalan).
Tataan hasil
Tidak ada.
Keterangan
Setelah prosedur tersimpan yang diperluas dibuat, prosedur harus ditambahkan ke SQL Server dengan menggunakan sp_addextendedproc
. Untuk informasi selengkapnya, lihat Menambahkan Prosedur Tersimpan yang Diperluas ke SQL Server.
Prosedur ini hanya dapat dijalankan dalam master
database. Untuk menjalankan prosedur tersimpan yang diperluas dari database selain master
, memenuhi syarat nama prosedur tersimpan yang diperluas dengan master
.
sp_addextendedproc
menambahkan entri ke tampilan katalog sys.objects , mendaftarkan nama prosedur tersimpan baru yang diperluas dengan SQL Server. Ini juga menambahkan entri dalam tampilan katalog sys.extended_procedures .
Penting
DLL yang ada yang tidak terdaftar dengan jalur lengkap tidak berfungsi setelah memutakhirkan ke SQL Server. Untuk memperbaiki masalah, gunakan sp_dropextendedproc
untuk membatalkan pendaftaran DLL, lalu daftarkan ulang dengan sp_addextendedproc
, menentukan jalur lengkap.
Izin
Hanya anggota peran server tetap sysadmin yang dapat menjalankan sp_addextendedproc
.
Contoh
Contoh berikut menambahkan prosedur tersimpan xp_hello
yang diperluas.
USE master;
GO
EXEC sp_addextendedproc xp_hello, 'c:\xp_hello.dll';