Opgeslagen procedures uitvoeren

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Een opgeslagen procedure is een uitvoerbaar object dat in een database is opgeslagen. SQL Server ondersteunt:

  • Opgeslagen procedures:

    Een of meer SQL-statements vooraf gecompileerd tot één uitvoerbare procedure.

  • Uitgebreide opgeslagen procedures:

    C- of C++ dynamic-linkbibliotheken (DLL) geschreven naar de SQL Server Open Data Services API voor uitgebreide opgeslagen procedures. De Open Data Services API breidt de mogelijkheden van opgeslagen procedures uit met C- of C++-code.

Bij het uitvoeren van statements kan het aanroepen van een opgeslagen procedure op de databron (in plaats van direct een statement in de clientapplicatie uit te voeren of voor te bereiden) het volgende opleveren:

  • Hogere prestaties

    SQL-statements worden geparsed en gecompileerd wanneer procedures worden aangemaakt. Deze overhead wordt vervolgens opgeslagen wanneer de procedures worden uitgevoerd.

  • Verminderde netwerkoverhead

    Het uitvoeren van een procedure in plaats van complexe queries over het netwerk te sturen, kan het netwerkverkeer verminderen. Als een ODBC-applicatie de ODBC { CALL }-syntaxis gebruikt om een opgeslagen procedure uit te voeren, voert de ODBC-driver extra optimalisaties uit waardoor het niet meer nodig is om parametergegevens te converteren.

  • Grotere consistentie

    Als de regels van een organisatie worden geïmplementeerd in een centrale bron, zoals een opgeslagen procedure, kunnen ze één keer worden gecodeerd, getest en gedebugged. Individuele programmeurs kunnen dan de geteste opgeslagen procedures gebruiken in plaats van hun eigen implementaties te ontwikkelen.

  • Grotere nauwkeurigheid

    Omdat opgeslagen procedures meestal worden ontwikkeld door ervaren programmeurs, zijn ze doorgaans efficiënter en bevatten ze minder fouten dan code die meerdere keren is ontwikkeld door programmeurs van verschillende vaardigheidsniveaus.

  • Toegevoegde functionaliteit

    Uitgebreide opgeslagen procedures kunnen C- en C++-functies gebruiken die niet beschikbaar zijn in Transact-SQL instructies.

    Voor een voorbeeld van hoe een opgeslagen procedure aan te roepen, zie Process Return Codes and Output Parameters (ODBC).

In deze sectie