Skapa databasobjekt med CLR-integrering (Common Language Runtime)
gäller för:SQL Server
Du kan skapa databasobjekt med hjälp av SQL Server-integreringen med .NET Framework Common Language Runtime (CLR). Hanterad kod som körs i SQL Server kallas för en CLR-rutin. Dessa rutiner omfattar:
- Skalära, värderade användardefinierade funktioner (skalära UDF:er)
- Tabellvärdesanvändardefinierade funktioner (TVF:er)
- Användardefinierade procedurer (UDP:er)
- Användardefinierade utlösare
CLR-rutiner har samma struktur i hanterad kod. De mappas till offentliga, statiska (delade i Visual Basic .NET) metoder för en klass. Förutom rutiner kan användardefinierade typer (UDT) och användardefinierade aggregeringsfunktioner också definieras med hjälp av .NET Framework. UDT och användardefinierade aggregeringar mappas till hela .NET Framework-klasser.
Varje typ av .NET Framework-rutin har en Transact-SQL-deklaration och kan användas var som helst i SQL Server som den Transact-SQL motsvarigheten kan användas. Till exempel kan skalära UDF:er användas i valfritt skalärt uttryck. En TVF kan användas i valfri FROM
-sats. En procedur kan anropas i en EXEC
-instruktion eller anropas från ett klientprogram.
Körning av ett CLR-objekt (användardefinierad funktion, användardefinierad typ eller utlösare) på den vanliga språkkörningen kan ske på flera trådar (parallell plan), om frågeoptimeraren anser att det är fördelaktigt. Men om en användardefinierad funktion kommer åt data körs körningen på en serieplan.
I följande tabell visas de artiklar som beskrivs i det här avsnittet.
Artikel | Beskrivning |
---|---|
Kom igång med CLR-integrering | Ger en kort översikt över de bibliotek och namnområden som krävs för att kompilera objekt med hjälp av CLR-integrering med SQL Server. Innehåller ett exempel på en CLR-lagrad procedur för Hello World. |
.NET Framework-bibliotek som stöds | Innehåller information om .NET Framework-bibliotek som stöds av CLR-integrering. |
begränsningar för CLR-integreringsmodeller | Innehåller information om begränsningar för CLR-integrering av programmeringsmodeller. |
SQL Server-datatyper i .NET Framework- | En översikt över SQL Server-datatyper och deras .NET Framework-motsvarigheter. |
CLR-integrering: anpassade attribut för CLR-rutiner | Innehåller information om anpassade CLR-integreringsattribut. |
ANVÄNDARDEFINIERADE CLR-funktioner | Beskriver hur du implementerar och använder de olika typerna av CLR-funktioner: tabellvärdes-, skalär- och användardefinierade aggregeringsfunktioner. |
CLR-användardefinierade typer | Beskriver hur du implementerar och använder CLR-användardefinierade typer. |
CLR-lagrade procedurer | Beskriver hur du implementerar och använder CLR-lagrade procedurer. |
CLR utlöser | Beskriver hur du implementerar och använder CLR-utlösare. |