Översikt över Azure SQL-bindningar för Azure Functions

Den här uppsättningen artiklar beskriver hur du arbetar med Azure SQL-bindningar i Azure Functions. Azure Functions stöder indatabindningar, utdatabindningar och en funktionsutlösare för Azure SQL- och SQL Server-produkterna.

Åtgärd Typ
Utlösa en funktion när en ändring identifieras i en SQL-tabell SQL-utlösare
Läsa data från en databas Indatabindning
Spara data i en databas Utdatabindning

Installera tillägget

Vilket NuGet-tilläggspaket du installerar beror på vilket C#-läge du använder i funktionsappen:

Funktioner körs i en isolerad C#-arbetsprocess. Mer information finns i Guide för att köra C# Azure Functions i en isolerad arbetsprocess.

Lägg till tillägget i projektet genom att installera det här NuGet-paketet.

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

Om du vill använda en förhandsversion av paketet Microsoft.Azure.Functions.Worker.Extensions.Sql lägger du till --prerelease flaggan i kommandot . Du kan visa förhandsversionsfunktioner på versionssidan för Azure Functions SQL-tillägg.

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

Kommentar

Icke-bakåtkompatibla ändringar mellan förhandsversioner av Azure SQL-bindningar för Azure Functions kräver att alla funktioner som riktar sig till samma databas använder samma version av SQL-tilläggspaketet.

Installera paket

SQL-bindningstillägget är en del av v4-tilläggspaketet, som anges i din host.json projektfil.

Tilläggspaketet anges av följande kod i host.json filen:

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

Funktionskörning

Installera paket

SQL-bindningstillägget är en del av v4-tilläggspaketet, som anges i din host.json projektfil.

Tilläggspaketet anges av följande kod i host.json filen:

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

Installera paket

SQL-bindningstillägget är en del av v4-tilläggspaketet, som anges i din host.json projektfil.

Tilläggspaketet anges av följande kod i host.json filen:

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

Uppdatera paket

Lägg till Java-biblioteket för SQL-bindningar till ditt funktionsprojekt med en uppdatering pom.xml av filen i Java Azure Functions-projektet enligt följande kodfragment:

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

Du kan använda förhandsgranskningstilläggspaketet med en uppdatering av pom.xml filen i ditt Java Azure Functions-projekt enligt följande kodfragment:

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

SQL niska veze

Azure SQL-bindningar för Azure Functions har en nödvändig egenskap för niska veze för alla bindningar och utlösare. Dessa skickar niska veze till biblioteket Microsoft.Data.SqlClient och stöder niska veze enligt definitionen i dokumentationen för SqlClient ConnectionString. Viktiga nyckelord är:

  • Authentication tillåter att en funktion ansluter till Azure SQL med Microsoft Entra-ID, inklusive Active Directory Managed Identity
  • Command Timeout tillåter att en funktion väntar under angiven tid i sekunder innan en fråga avslutas (standardvärdet är 30 sekunder)
  • ConnectRetryCount tillåter att en funktion automatiskt gör ytterligare återanslutningsförsök, särskilt för serverlös Azure SQL Database-nivå (standard 1)
  • Pooling tillåter en funktion att återanvända anslutningar till databasen, vilket kan förbättra prestandan (standard true). Ytterligare inställningar för anslutningspooler är Connection Lifetime, Max Pool Sizeoch Min Pool Size. Läs mer om anslutningspooler i dokumentationen om ADO.NET

Att tänka på

  • Azure SQL-bindning stöder version 4.x och senare av Functions-körningen.
  • Källkod för Azure SQL-bindningar finns på den här GitHub-lagringsplatsen.
  • Den här bindningen kräver anslutning till en Azure SQL- eller SQL Server-databas.
  • Utdatabindningar mot tabeller med kolumner med datatyper NTEXT, TEXTeller IMAGE stöds inte och datauppserterter misslyckas. Dessa typer tas bort i en framtida version av SQL Server och är inte kompatibla med funktionen OPENJSON som används av den här Azure Functions-bindningen.

Exempel

Utöver exemplen för C#, Java, JavaScript, PowerShell och Python som är tillgängliga på GitHub-lagringsplatsen för Azure SQL-bindningar finns det fler tillgängliga i Azure-exempel:

Nästa steg