Delen via


sp_addextendedproc (Transact-SQL)

Van toepassing op:SQL Server

Registreert de naam van een nieuwe uitgebreide opgeslagen procedure in SQL Server.

Opmerking

Deze functie wordt verwijderd in een toekomstige versie van SQL Server. Vermijd het gebruik van deze functie in nieuwe ontwikkelwerkzaamheden en plan om toepassingen te wijzigen die momenteel gebruikmaken van deze functie. Gebruik in plaats daarvan Common Language runtime (CLR) integratie .

Transact-SQL syntaxis-conventies

Syntaxis

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

Arguments

[ @functname = ] N'functname'

De naam van de functie die binnen de dynamic-link library (DLL) wordt aangeroepen. @functname is nvarchar(517), zonder standaard. @functname kunt optioneel de eigenaarnaam opnemen in het formulier <owner.function>.

[ @dllname = ] 'dllname'

De naam van de DLL die de functie bevat. @dllname is varchar(255), zonder standaard. Je moet het volledige pad van de DLL specificeren.

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Resultaatset

Geen.

Opmerkingen

Nadat een uitgebreide opgeslagen procedure is aangemaakt, moet deze worden toegevoegd aan SQL Server door gebruik te maken van sp_addextendedproc. Voor meer informatie, zie Toevoegen van een uitgebreide opgeslagen procedure aan SQL Server.

Deze procedure kan alleen in de master database worden uitgevoerd. Om een uitgebreide opgeslagen procedure uit te voeren vanuit een database anders dan master, kwalificeer je de naam van de uitgebreide opgeslagen procedure met master.

sp_addextendedproc voegt vermeldingen toe aan de sys.objects-catalogusweergave , waarbij de naam van de nieuwe uitgebreide opgeslagen procedure wordt geregistreerd bij SQL Server. Het voegt ook een vermelding toe in de catalogusweergave van de sys.extended_procedures .

Belangrijk

Bestaande DLL's die niet geregistreerd zijn met een volledig pad werken niet na een upgrade naar SQL Server. Om het probleem op te lossen, gebruik sp_dropextendedproc je om de DLL te verwijderen en vervolgens opnieuw te registreren met sp_addextendedproc, waarbij het volledige pad wordt gespecificeerd.

Permissions

Alleen leden van de vaste serverrol sysadmin kunnen worden uitgevoerd sp_addextendedproc.

Voorbeelden

Het volgende voorbeeld voegt de xp_hello uitgebreide opgeslagen procedure toe.

USE master;
GO

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