sp_addextendedproc (Transact-SQL)

Gäller för:SQL Server

Registrerar namnet på en ny utökad lagrad procedur till SQL Server.

Anmärkning

Den här funktionen tas bort i en framtida version av SQL Server. Undvik att använda den här funktionen i nytt utvecklingsarbete och planera att ändra program som för närvarande använder den här funktionen. Använd istället Common Language Runtime (CLR)-integration .

Transact-SQL syntaxkonventioner

Syntax

sp_addextendedproc
    [ @functname = ] N'functname'
    , [ @dllname = ] 'dllname'
[ ; ]

Arguments

[ @functname = ] N'functname'

Namnet på funktionen som ska anropas inom dynamic-link-biblioteket (DLL). @functname är nvarchar(517), utan standard. @functname kan valfritt inkludera ägarens namn i formuläret <owner.function>.

[ @dllname = ] 'dllname'

Namnet på den DLL som innehåller funktionen. @dllname är varchar(255), utan standard. Du bör specificera hela vägen för DLL:n.

Returnera kodvärden

0 (lyckades) eller 1 (fel).

Resultatuppsättning

Ingen.

Anmärkningar

Efter att en utökad lagrad procedur har skapats måste den läggas till i SQL Server med hjälp av sp_addextendedproc. För mer information, se Att lägga till en utökad lagrad procedur till SQL Server.

Denna procedur kan endast köras i databasen master . För att köra en utökad lagrad projeder från en annan databas än master, kvalificera namnet på den utökade lagrade proceduren med master.

sp_addextendedproc lägger till poster i sys.objects-katalogvyn och registrerar namnet på den nya utökade lagrade proceduren i SQL Server. Den lägger också till en post i sys.extended_procedures katalogvyn.

Viktigt!

Befintliga DLL-filer som inte är registrerade med en komplett sökväg fungerar inte efter uppgradering till SQL Server. För att åtgärda problemet, använd sp_dropextendedproc för att avregistrera DLL:n och registrera den sedan igen med sp_addextendedproc, där du anger hela vägen.

Permissions

Endast medlemmar i den fasta serverrollen sysadmin kan köra sp_addextendedproc.

Examples

Följande exempel lägger till den utökade lagrade xp_hello proceduren.

USE master;
GO

EXECUTE sp_addextendedproc xp_hello, 'c:\xp_hello.dll';