نظرة عامة على روابط Azure SQL لوظائف Azure
تشرح هذه المجموعة من المقالات كيفية العمل باستخدام روابط Azure SQL في Azure Functions. تدعم Azure Functions روابط الإدخال وروابط الإخراج ومشغل دالة لمنتجات Azure SQL وSQL Server.
الإجراء | نوع |
---|---|
تشغيل دالة عند الكشف عن تغيير على جدول SQL | مشغل SQL |
قراءة البيانات من قاعدة البيانات | ربط الإدخال |
حفظ البيانات في قاعدة بيانات | ربط الإخراج |
تثبيت الملحق
تعتمد حزمة NuGet الملحق التي تقوم بتثبيتها على وضع C# الذي تستخدمه في تطبيق الوظائف:
يتم تنفيذ الوظائف في عملية عامل C# معزولة. لمعرفة المزيد، راجع دليل تشغيل وظائف C# Azure في عملية عامل معزولة.
أضف الملحق إلى مشروعك عن طريق تثبيت حزمة NuGet.
dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Sql
لاستخدام إصدار معاينة من حزمة Microsoft.Azure.Functions.Worker.Extensions.Sql، أضف العلامة --prerelease
إلى الأمر . يمكنك عرض وظيفة المعاينة في صفحة إصدار Azure Functions SQL Extensions.
dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Sql --prerelease
إشعار
يتطلب كسر التغييرات بين إصدارات المعاينة لروابط Azure SQL لوظائف Azure أن تستخدم جميع الوظائف التي تستهدف نفس قاعدة البيانات نفس الإصدار من حزمة ملحق SQL.
تثبيت الحزمة
ملحق روابط SQL هو جزء من حزمة ملحق v4، والتي تم تحديدها في ملف مشروع host.json.
يتم تحديد مجموعة الملحقات بواسطة التعليمات البرمجية التالية في ملفك host.json
:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.*, 5.0.0)"
}
}
وقت تشغيل الوظائف
تثبيت الحزمة
ملحق روابط SQL هو جزء من حزمة ملحق v4، والتي تم تحديدها في ملف مشروع host.json.
يتم تحديد مجموعة الملحقات بواسطة التعليمات البرمجية التالية في ملفك host.json
:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.*, 5.0.0)"
}
}
تثبيت الحزمة
ملحق روابط SQL هو جزء من حزمة ملحق v4، والتي تم تحديدها في ملف مشروع host.json.
يتم تحديد مجموعة الملحقات بواسطة التعليمات البرمجية التالية في ملفك host.json
:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.*, 5.0.0)"
}
}
حزم التحديث
أضف مكتبة Java لروابط SQL إلى مشروع الوظائف الخاص بك مع تحديث للملف pom.xml
في مشروع وظائف Java Azure كما هو ملاحظ في القصاصة البرمجية التالية:
<dependency>
<groupId>com.microsoft.azure.functions</groupId>
<artifactId>azure-functions-java-library-sql</artifactId>
<version>2.1.0</version>
</dependency>
يمكنك استخدام حزمة ملحق المعاينة مع تحديث للملف pom.xml
في مشروع وظائف Java Azure كما هو ملاحظ في القصاصة البرمجية التالية:
<dependency>
<groupId>com.microsoft.azure.functions</groupId>
<artifactId>azure-functions-java-library-sql</artifactId>
<version>2.1.0-preview</version>
</dependency>
سلسلة اتصال SQL
تحتوي روابط Azure SQL لوظائف Azure على خاصية مطلوبة سلسلة الاتصال على جميع الروابط والمشغلات. تمرر هذه سلسلة الاتصال إلى مكتبة Microsoft.Data.SqlClient وتدعم سلسلة الاتصال كما هو محدد في وثائق SqlClient ConnectionString. تشمل الكلمات الأساسية البارزة ما يلي:
Authentication
يسمح لوظيفة بالاتصال ب Azure SQL باستخدام معرف Microsoft Entra، بما في ذلك Active Directory Managed Identity- يسمح
Command Timeout
لوظيفة ما بالانتظار لفترة محددة من الوقت بالثواني قبل إنهاء استعلام ما (افتراضي 30 ثانية) - يسمح
ConnectRetryCount
لوظيفة ما بإجراء محاولات إعادة اتصال إضافية تلقائياً، خاصة تلك التي تنطبق على طبقة Azure SQL Database بلا خادم (افتراضي 1) Pooling
يسمح للدالة بإعادة استخدام الاتصالات بقاعدة البيانات، والتي يمكن أن تحسن الأداء (الافتراضيtrue
). تتضمنConnection Lifetime
الإعدادات الإضافية لتجميع الاتصال وMax Pool Size
و.Min Pool Size
تعرف على المزيد حول تجميع الاتصال في وثائق ADO.NET
الاعتبارات
- يدعم ربط Azure SQL الإصدار 4.x والإصدارات الأحدث من وقت تشغيل الوظائف.
- يمكن العثور على التعليمة البرمجية المصدر لربط Azure SQL في مستودع GitHub هذا.
- يتطلب هذا الربط الاتصال بـAzure SQL Database أو SQL Server.
- روابط الإخراج مقابل الجداول التي تحتوي على أعمدة من أنواع البيانات
NTEXT
، وTEXT
، أوIMAGE
غير مدعومة وستفشل عمليات رفع البيانات. هذه الأنواع ستتم إزالتها في إصدار مستقبلي من SQL Server وهي غير متوافقة مع الوظيفةOPENJSON
المستخدمة بواسطة ربط Azure Functions.
العينات
بالإضافة إلى عينات C# وJava وJavaScript وPowerShell وPython المتوفرة في مستودع GitHub لروابط Azure SQL، يتوفر المزيد في نماذج Azure:
- نموذج واجهة برمجة تطبيقات C# ToDo مع روابط Azure SQL
- استخدام روابط SQL في Azure Stream Analytics
- إرسال البيانات من Azure SQL باستخدام Python