sp_addextendedproc (Transact-SQL)
適用於:SQL Server
向 SQL Server 註冊新的擴充預存程式名稱。
注意
SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 Common Language Runtime (CLR) 整合 。
語法
sp_addextendedproc
[ @functname = ] N'functname'
, [ @dllname = ] 'dllname'
[ ; ]
引數
[ @functname = ] N'functname'
在動態連結庫 (DLL) 內呼叫的函式名稱。 @functname為 nvarchar(517),沒有預設值。 @functname可以選擇性地在 表單<owner.function>
中包含擁有者名稱。
[ @dllname = ] 'dllname'
包含函式的 DLL 名稱。 @dllname為 varchar(255),沒有預設值。 您應該指定 DLL 的完整路徑。
傳回碼值
0
(成功) 或 1
(失敗)。
結果集
無。
備註
建立擴充預存程式之後,必須使用 將它新增至 SQL Server sp_addextendedproc
。 如需詳細資訊,請參閱 將擴充預存程式新增至 SQL Server。
此程式只能在 master
資料庫中執行。 若要從 以外的 master
資料庫執行擴充預存程式,請使用 限定擴充預存程式 master
的名稱。
sp_addextendedproc
將專案新增至 sys.objects 目錄檢視,向 SQL Server 註冊新的擴充預存程式名稱。 它也會在sys.extended_procedures目錄檢視中新增專案。
重要
升級至 SQL Server 之後,未向完整路徑註冊的現有 DLL 將無法運作。 若要更正問題,請使用 sp_dropextendedproc
來取消註冊 DLL,然後使用 來重新註冊它 sp_addextendedproc
,並指定完整路徑。
權限
只有系統管理員固定伺服器角色的成員才能執行 sp_addextendedproc
。
範例
下列範例會 xp_hello
新增擴充預存程式。
USE master;
GO
EXEC sp_addextendedproc xp_hello, 'c:\xp_hello.dll';