Azure SQL-kötések az Azure Functionshez – áttekintés

Ez a cikksorozat bemutatja, hogyan használható az Azure SQL-kötések az Azure Functionsben. Az Azure Functions támogatja a bemeneti kötéseket, a kimeneti kötéseket és egy függvényindítót az Azure SQL- és SQL Server-termékekhez.

Művelet Típus
Függvény aktiválása, ha változás észlelhető egy SQL-táblában SQL-eseményindító
Adatok beolvasása adatbázisból Bemeneti kötés
Adatok mentése adatbázisba Kimeneti kötés

A bővítmény telepítése

A telepített NuGet-csomag a függvényalkalmazásban használt C# módtól függ:

A függvények izolált C# feldolgozói folyamatban futnak. További információ: Útmutató a C# Azure Functions izolált feldolgozói folyamatban való futtatásához.

A NuGet-csomag telepítésével adja hozzá a bővítményt a projekthez.

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Sql

A Microsoft.Azure.Functions.Worker.Extensions.Sql csomag előzetes verziójának használatához adja hozzá a --prerelease jelölőt a parancshoz. Az előzetes verziójú funkciók az Azure Functions SQL Extensions kiadási oldalán tekinthetők meg.

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Sql --prerelease

Feljegyzés

Az Azure Functions-hez készült Azure SQL-kötések előzetes verziói közötti kompatibilitástörő változások megkövetelik, hogy az ugyanazon adatbázist célzó összes függvény ugyanazt az SQL-bővítménycsomagot használja.

Csomag telepítése

Az SQL-kötések bővítménye a v4-bővítménycsomag része, amely a host.json projektfájlban van megadva.

A bővítménycsomagot a következő kód határozza meg a host.json fájlban:

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[4.*, 5.0.0)"
  }
}

Függvények futtatókörnyezete

Csomag telepítése

Az SQL-kötések bővítménye a v4-bővítménycsomag része, amely a host.json projektfájlban van megadva.

A bővítménycsomagot a következő kód határozza meg a host.json fájlban:

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[4.*, 5.0.0)"
  }
}

Csomag telepítése

Az SQL-kötések bővítménye a v4-bővítménycsomag része, amely a host.json projektfájlban van megadva.

A bővítménycsomagot a következő kód határozza meg a host.json fájlban:

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[4.*, 5.0.0)"
  }
}

Csomagok frissítése

Adja hozzá az SQL-kötésekhez készült Java-kódtárat a függvényprojekthez a pom.xml Java Azure Functions-projekt fájljának frissítésével, ahogyan az az alábbi kódrészletben látható:

<dependency>
    <groupId>com.microsoft.azure.functions</groupId>
    <artifactId>azure-functions-java-library-sql</artifactId>
    <version>2.1.0</version>
</dependency>

Az előzetes verziójú bővítménycsomagot a Java Azure Functions-projekt fájljának pom.xml frissítésével használhatja az alábbi kódrészletben látható módon:

<dependency>
    <groupId>com.microsoft.azure.functions</groupId>
    <artifactId>azure-functions-java-library-sql</artifactId>
    <version>2.1.0-preview</version>
</dependency>

SQL-kapcsolati sztring

Az Azure Functions Azure SQL-kötései rendelkeznek az összes kötés és eseményindító kapcsolati sztring szükséges tulajdonságával. Ezek továbbítják a kapcsolati sztring a Microsoft.Data.SqlClient könyvtárnak, és támogatják az SqlClient Csatlakozás ionString dokumentációjában meghatározott kapcsolati sztring. A fontosabb kulcsszavak a következők:

  • Authenticationlehetővé teszi, hogy egy függvény Microsoft Entra-azonosítóval csatlakozzon az Azure SQL-hez, beleértve az Active Directory felügyelt identitást is
  • Command Timeout lehetővé teszi, hogy a függvény másodpercekben meghatározott ideig várjon a lekérdezés megszüntetése előtt (alapértelmezett 30 másodperc)
  • ConnectRetryCount lehetővé teszi, hogy egy függvény automatikusan további újracsatlakozási kísérleteket tegyen, különösen az Azure SQL Database kiszolgáló nélküli rétegére (alapértelmezett 1)
  • Pooling lehetővé teszi, hogy egy függvény újra felhasználja az adatbázis kapcsolatait, ami javíthatja a teljesítményt (alapértelmezett true). A kapcsolatkészletezés további beállításai közé tartozik az Connection Lifetime, Max Pool Sizeés Min Pool Sizea . További információ a kapcsolatkészletezésről a ADO.NET dokumentációjában

Megfontolások

  • Az Azure SQL-kötés támogatja a Functions-futtatókörnyezet 4.x és újabb verzióját.
  • Az Azure SQL-kötések forráskódja ebben a GitHub-adattárban található.
  • Ez a kötés egy Azure SQL- vagy SQL Server-adatbázishoz való kapcsolódást igényel.
  • Adattípusú NTEXTTEXToszlopokkal rendelkező táblák kimeneti kötései, vagy IMAGE nem támogatottak, és az adat-upserts sikertelen lesz. Ezek a típusok az SQL Server egy későbbi verziójában lesznek eltávolítva , és nem kompatibilisek a OPENJSON jelen Azure Functions-kötés által használt függvénnyel.

Minták

Az Azure SQL-kötések GitHub-adattárában elérhető C#, Java, JavaScript, PowerShell és Python-minták mellett továbbiak is elérhetők az Azure-mintákban:

Következő lépések