Olvasás angol nyelven

Megosztás a következőn keresztül:


Bevezetés az SQL Server CLR-integrációjába

A közös nyelvi futtatókörnyezet (CLR) a .NET-keretrendszer központja, és minden .NET-keretrendszer kód végrehajtási környezetét biztosítja. A CLR-ben futó kódot felügyelt kódnak nevezzük. A CLR különböző funkciókat és szolgáltatásokat biztosít a program végrehajtásához, beleértve az igény szerinti (JIT) fordítást, a memória kiosztását és kezelését, a típusbiztonság kényszerítését, a kivételkezelést, a szálkezelést és a biztonságot.

A Microsoft SQL Serverben üzemeltetett CLR -vel (az úgynevezett CLR-integrációval) tárolt eljárásokat, eseményindítókat, felhasználó által definiált függvényeket, felhasználó által definiált típusokat és felhasználó által definiált összesítéseket készíthet felügyelt kódban. Mivel a felügyelt kód a végrehajtás előtt natív kódra fordít, bizonyos esetekben jelentős teljesítménynövekedés érhető el.

A .NET-keretrendszer futtatott felügyelt kód a Code Access Security (CAS), a kódhivatkozások és az alkalmazástartományok használatával megakadályozza, hogy a szerelvények bizonyos műveleteket hajtsanak végre. Az SQL Server CAS használatával védi a felügyelt kódot, és megakadályozza az operációs rendszer vagy adatbázis-kiszolgáló sérülését.

Megjegyzés

A Code Access Security (CAS) elavult a .NET-keretrendszer és a .NET összes verziójában. A .NET legújabb verziói nem tartják tiszteletben a CAS-megjegyzéseket, és cas-okkal kapcsolatos API-k használata esetén hibákat okoznak. A fejlesztőknek alternatív módot kell keresnie a biztonsági feladatok elvégzésére.

Ez a szakasz csak annyi információt tartalmaz, hogy elkezdhesse a programozást az SQL Server CLR-integrációval, és nem célja, hogy átfogó legyen. További információt a Common Language Runtime (CLR) integrációs áttekintésében talál.

A CLR-integráció engedélyezése

A közös nyelvi futtatókörnyezet (CLR) integrációs funkciója alapértelmezés szerint ki van kapcsolva a Microsoft SQL Serverben, és engedélyezni kell a CLR-integrációval implementált objektumok használatához. Ha engedélyezni szeretné a CLR-integrációt a Transact-SQL használatával, használja a clr enabled tárolt eljárás lehetőségét az sp_configure alábbiak szerint:

SQL
sp_configure 'clr enabled', 1  
GO  
RECONFIGURE  
GO  

A CLR-integráció letiltásához állítsa a clr enabled 0 értéket. A CLR-integráció letiltásakor az SQL Server leállítja az összes CLR-rutin végrehajtását, és eltávolítja az összes alkalmazástartományt.

További információ: A CLR-integráció engedélyezése.

CLR-szerelvény üzembe helyezése

Miután a CLR-metódusokat tesztelték és ellenőrizték a tesztkiszolgálón, üzembehelyezési szkripttel terjeszthetők az éles kiszolgálókra. Az üzembehelyezési szkript manuálisan vagy az SQL Server Management Studióval hozható létre. További információkért tekintse meg az SQL Server dokumentációjának a használt SQL Server-verzióra vonatkozó verzióját.

Az SQL Server dokumentációja

  1. CLR-adatbázisobjektumok üzembe helyezése

CLR integrációs biztonság

A Microsoft SQL Server és a Microsoft .NET-keretrendszer közös nyelvi futtatókörnyezet (CLR) integrációjának biztonsági modellje kezeli és biztosítja a hozzáférést az SQL Serveren futó különböző TÍPUSÚ CLR- és nem CLR-objektumok között. Ezeket az objektumokat egy Transact-SQL utasítás vagy egy másik, a kiszolgálón futó CLR-objektum hívhatja meg.

További információ: CLR Integration Security.

CLR-szerelvény hibakeresése

A Microsoft SQL Server támogatja a Transact-SQL és a közös nyelvi futtatókörnyezeti (CLR) objektumok hibakeresését az adatbázisban. A hibakeresés több nyelven működik: a felhasználók zökkenőmentesen léphetnek be CLR-objektumokba a Transact-SQL-ből, és fordítva.

További információ: CLR-adatbázisobjektumok hibakeresése.

Lásd még