Naudojant išplėstinio išsaugotas procedūras arba SP_OA saugomas procedūras SQL serverio CLR įkelti nepalaikoma

Santrauka

"Microsoft" nepalaiko "Microsoft" bendroji kalbos vykdyklė (kartu su .NET Framework) naudoti COM pareikštines apvalkalas ar valdomas plėtinius C++ Microsoft SQL Server 2005, Microsoft SQL Server 2000 arba Microsoft SQL Server 7.0. Šis apribojimas palaikymo mažmeninėms tiesiai į išplėstinio saugomas procedūras naudoti ir naudoti OLE automatizavimo jokių pakrovimo bibliotekų, kurios jums reikia įkelti paleisti SQL serverio atminties srityje.

SQL Server 2005 ir vėlesnės versijos pagrindinio kompiuterio bendras kalbos vykdyklė (CLR) ir palaikymo procedūros, funkcijas, sukelia, tipus ir suvestiniai duomenys, įrašyti CLR langauges. Šios versijos negali įkelti CLR naudojant išplėstinio saugomi proceduress arba sp_OA saugomas procedūras.

Daugiau informacijos

.NET Framework rinkinio System.Runtime.InteropServices suteikia patikimus aplinkoje spausdinamuose rinkinių nekontroliuojamiems kodas. Tačiau yra keletas techninių discordances vidaus CLR diegimas ir SQL serverio:

Gijos

Norėdami padidinti efektyvumą, kad CLR įgyvendina Thread vietos saugojimo.

Jei norite gauti daugiau informacijos apie problemas, susijusias su Thread vietos saugojimo naudoti išplėstinio saugomas procedūras, spustelėkite šiuos straipsnių numerius ir peržiūrėkite straipsnius Microsoft žinių bazėje:

163449 , Thread vietos saugojimo Išplėstinis Išsaugota procedūra

190987 kaip naudoti pratęsti saugomas procedūras

Be to, CLR naudoja tik gijos pagrindo planavimas ir nepalaiko pluošto režimo planavimo. Tačiau SQL serverio galite naudoti pluošto režimo planavimo. Norėdami sukonfigūruoti ši ypatybė, naudokite vieną iš toliau nurodytų būdų:

  • Vykdyti sp_configure saugomą procedūrą naudojant parinktį supaprastintos prieigos prie telkinio .

  • SQL Server 2000 "arba" SQL Server 7.0, galite sukonfigūruoti ši ypatybė SQL Server Enterprise Manager. Norėdami tai padaryti, atlikite šiuos veiksmus:

    1. Enterprise Manager išplėskite Microsoft SQL serverių, išplėskite SQL serverio grupėsir dešiniuoju pelės mygtuku spustelėkite SQL Server 2000 "arba" SQL Server 7.0 egzempliorių.

    2. SQL serverio ypatybės (konfigūruoti) dialogo langas, spustelėkite skirtuką procesorius .

    3. Spustelėdami pažymėkite žymės langelį naudoti Windows NT pluošto .

  • SQL Server 2005, galite konfigūruoti šiame SQL Server Management Studio. Norėdami tai padaryti, atlikite šiuos veiksmus:

    1. Management Studio, prisijungti prie SQL Server 2005 egzempliorius.

    2. Objektą Internet Explorer, dešiniuoju pelės mygtuku spustelėkite SQL serverio egzemplioriuje, ir tada spustelėkite Ypatybės.

    3. Serverio ypatybių dialogo lange spustelėkite procesoriais.

    4. Spustelėdami pažymėkite žymės langelį naudoti "Windows" pluošto (supaprastintos prieigos prie telkinio) .

Atminties

Išplėstinis saugomas procedūras ir OLE automatizavimo ir paleisti virtualiosios atminties adreso vietos SQL serverio atminties. Numatytasis SQL serverio atminties yra tik atminties, SQL serveris gali naudoti ir CLR konkuruoja su bet kuriuo dabartinė įranga, kuri šių atminties išteklių dalis.
Jei norite gauti daugiau informacijos apie SQL serverio atminties valdymas, spustelėkite toliau straipsnio numerį ir peržiūrėkite straipsnį Microsoft žinių bazėje:

316749 gali nebūti nepakanka virtualiosios atminties, kai yra daug duomenų bazių SQL serverio

COM sąveika

Šiame skyriuje specialiai skirtos naudoti OLE automatizavimo SQL Server ir jis taikomas proceso ir iš proceso COM objektų. Rinkinio metaduomenų funkcija sąsajos įgyvendina primygtinai įvedėte mechanizmas, skirtas bet iššūkiai.

Kaip tai dizainas, COM pareikštines pakuotės komplekto naudoti su išoriniu mechanizmas a klasės ID siejimas su valdoma klasės narys. Dėl šio aiškaus susiejimas, nėra nekontroliuojamiems požiūriu nėra galimybę nustatyti šakninio sąrašo galimų sąsajų.

Išplėstinis Išsaugota procedūra sp_oaCreate atpažįsta IUnknown::QueryInterface sąsajos objekto konkrečios sąsajos palaikymą. CLR ir nekontroliuojamiems kodas sąveikos priklauso IDispatch sąsajos įgyvendinimo sąsajas. Atitikmens pagal CLR rinkinio QueryInterface metodą, todėl negalite sukurti objekto egzempliorius.

Reikia daugiau pagalbos?

Tobulinkite savo įgūdžius
Ieškoti mokymo
Pirmiausia gaukite naujų funkcijų
Prisijungti prie "Microsoft Insider"

Ar ši informacija buvo naudinga?

Dėkojame už jūsų atsiliepimus!

Dėkojame už jūsų atsiliepimą! Panašu, kad gali būti naudinga jus sujungti su vienu iš mūsų „Office“ palaikymo agentų.

×