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 ConnectionString dokumentációjában meghatározott kapcsolati sztring. A fontosabb kulcsszavak a következők:
Authentication
lehető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 isCommand 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értelmezetttrue
). A kapcsolatkészletezés további beállításai közé tartozik azConnection Lifetime
,Max Pool Size
ésMin Pool Size
a . 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ú
NTEXT
TEXT
oszlopokkal rendelkező táblák kimeneti kötései, vagyIMAGE
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 aOPENJSON
jelen Azure Functions-kötés által használt függvénnyel.
Példá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:
- C# ToDo API-minta Azure SQL-kötésekkel
- SQL-kötések használata az Azure Stream Analyticsben
- Adatok küldése az Azure SQL-ből a Pythonnal