إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على:
قاعدة بيانات Azure SQL
يستهدف هذا المنشور مطوري C وC ++ الذين يحاولون الاتصال بـAzure SQL Database. يتم تقسيمها إلى أقسام حتى تتمكن من الانتقال إلى القسم الذي يجذب اهتمامك بشكل أكبر.
المتطلبات الأساسية لبرنامج C/C++ التعليمي
تأكد من أن لديك العناصر التالية:
- حساب Azure نشط. إذا لم يكن لديك واحدة، يُمكنك التسجيل في الإصدار التجريبي المجاني لـ Azure.
- Visual Studio. يجب تثبيت مكونات لغة C++ لإنشاء هذا النموذج وتشغيله.
- تطوير Visual Studio Linux. إذا كنت تقوم بالتطوير على Linux، فيجب عليك أيضاً تثبيت ملحقVisual Studio Linux.
Azure SQL Database وSQL Server على الأجهزة الظاهرية
يتم إنشاء Azure SQL Database على Microsoft SQL Server ويتم تصميمها لتوفير خدمة عالية التوفر والأداء وقابلة للتطوير. هناك العديد من الفوائد لاستخدام Azure SQL على قاعدة البيانات الخاصة التي تعمل محلياً. باستخدام Azure SQL، لن تضطر إلى تثبيت قاعدة بياناتك أو إعدادها أو الاحتفاظ بها أو إدارتها بل المحتوى وبنية قاعدة بياناتك فقط. الأشياء النموذجية التي نقلق بشأنها مع قواعد البيانات مثل التسامح مع الخطأ والتكرار جميعها مدمجة.
يتضمن Azure حالياً خيارين لاستضافة أحمال عمل خادم SQL: Azure SQL Database وقاعدة البيانات كخدمة وخادم SQL على الأجهزة الظاهرية. لن ندخل في التفاصيل حول الاختلافات بين هذين الخيارين باستثناء أن Azure SQL Database هو الأفضل لك للتطبيقات الجديدة المستندة إلى السحابة للاستفادة من توفير التكاليف وتحسين الأداء الذي توفره الخدمات السحابية. إذا كنت تفكر في ترحيل تطبيقاتك المحلية أو توسيعها إلى السحابة، فقد يعمل خادم SQL على جهاز Azure الظاهري بشكل أفضل. لتبسيط الأمور في هذه المقالة، دعنا ننشئ Azure SQL Database.
تقنيات الوصول إلى البيانات: ODBC وOLE DB
لا يختلف الاتصال بـAzure SQL Database وتوجد طريقتان حالياً للاتصال بقواعد البيانات: ODBC (اتصال قاعدة البيانات المفتوح) وOLE DB (ارتباط العناصر بقاعدة البيانات وتضمينها). في السنوات الأخيرة، قامت Microsoft بالمواءمة مع ODBC للوصول الأصلي إلى البيانات العلائقية. يعد ODBC بسيطاً نسبياً وأسرع أيضاً من OLE DB. التحذير الوحيد هنا هو أن ODBC يستخدم واجهة برمجة تطبيقات قديمة على نمط C.
الخطوة 1: إنشاء قاعدة بيانات Azure SQL الخاصة بك
راجع صفحة البدء للتعرف على كيفية إنشاء نموذج قاعدة بيانات. وبدلاً من ذلك، يمكنك متابعة مقطع الفيديو القصير هذا ومدته دقيقتان لإنشاء Azure SQL Database باستخدام مدخل Microsoft Azure.
الخطوة 2: الحصول على سلسلة الاتصال
بعد إدراج استخدام Azure SQL Database، تحتاج إلى تنفيذ الخطوات التالية لتحديد معلومات الاتصال وإضافة عنوان IP الخاص بالعميل للوصول إلى جدار الحماية.
في مدخل Microsoft Azure ، انتقل إلى سلسلة اتصال Azure SQL Database ODBC الخاصة بك باستخدام إظهار سلاسل اتصال قاعدة البيانات المدرجة كجزء من قسم النظرة العامة لقاعدة بياناتك:
انسخ محتويات سلسلة ODBC (بما في ذلك Node.js) [مصادقة SQL] . نستخدم هذه السلسلة لاحقاً للاتصال من مترجم سطر أوامر C++ ODBC الخاص بنا. توفر هذه السلسلة تفاصيل مثل برنامج التشغيل والخادم ومعلمات اتصال قاعدة البيانات الأخرى.
الخطوة 3: إضافة عنوان IP الخاص بك إلى جدار الحماية
انتقل إلى قسم جدار الحماية لخادمك وأضف عنوان IP للعميل إلى جدار الحماية باستخدام هذه الخطوات للتأكد من أننا نستطيع إنشاء اتصال ناجح:
في هذه المرحلة، تكون قد قمت بتكوين Azure SQL Database الخاصة بك وأصبحت جاهزاً للاتصال من التعليمة البرمجية C++ الخاصة بك.
الخطوة 4: الاتصال من تطبيق Windows C/C++
يمكنك الاتصال بسهولة بـAzure SQL Database باستخدام ODBC على Windows باستخدام هذا النموذج الذي يتم إنشاؤه باستخدام Visual Studio. يقوم النموذج بتنفيذ مترجم سطر أوامر ODBC والذي يمكن استخدامه للاتصال بـAzure SQL Database الخاصة بنا. يأخذ هذا النموذج إما ملف اسم مصدر قاعدة البيانات (DSN) كوسيطة لسطر الأوامر أو سلسلة الاتصال المطولة التي قمنا بنسخها سابقاً من مدخل Microsoft Azure. اجلب صفحة الخصائص لهذا المشروع والصق سلسلة الاتصال كوسيطة أمر كما هو موضح هنا:
تأكد من توفير تفاصيل المصادقة الصحيحة لقاعدة البيانات الخاصة بك كجزء من سلسلة اتصال قاعدة البيانات هذه.
قم بتشغيل التطبيق لإنشائه. ينبغي أن ترى النافذة التالية للتحقق من صحة الاتصال الناجح. يمكنك حتى تشغيل بعض أوامر SQL الأساسية مثل إنشاء جدول للتحقق من اتصال قاعدة البيانات الخاصة بك:
وبدلاً من ذلك، يمكنك إنشاء ملف DSN باستخدام المعالج الذي يتم تشغيله عندما لا يتم توفير وسيطات الأمر. نوصي بتجربة هذا الخيار أيضاً. يمكنك استخدام ملف DSN هذا للأتمتة وحماية إعدادات المصادقة الخاصة بك:
تهانينا! لقد نجحت الآن في الاتصال بـAzure SQL باستخدام C++ وODBC على Windows. يمكنك متابعة القراءة لفعل الشيء نفسه لنظام Linux الأساسي أيضاً.
الخطوة 5: الاتصال من تطبيق Linux C/C++
في حال لم تصل إلى جديد، يتيح لك Visual Studio الآن تطوير تطبيق C++ Linux أيضاً. يمكنك القراءة عن هذا السيناريو الجديد في مدونة Visual C++ لتطوير Linux. لإنشاء نظام Linux، أنت بحاجة إلى جهاز بعيد تعمل به توزيعة Linux الخاصة بك. إذا لم يكن لديك جهازاً متاحاً، يمكنك إعداد جهاز بسرعة باستخدام Linux Azure Virtual Machines.
في هذا البرنامج التعليمي، دعنا نفترض أن لديك توزيع Ubuntu 16.04 Linux تم إعداده. ينبغي أن تنطبق الخطوات هنا أيضاً على Ubuntu 15.10 وRed Hat 6 وRed Hat 7.
تقوم الخطوات التالية بتثبيت المكتبات اللازمة لـSQL وODBC للتوزيعة الخاصة بك:
sudo su
sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/mssql-ubuntu-test/ xenial main" > /etc/apt/sources.list.d/mssqlpreview.list'
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
apt-get update
apt-get install msodbcsql
apt-get install unixodbc-dev-utf16 #this step is optional but recommended*
قم بتشغيل Visual Studio. ضمن Tools- > Options -> Cross Platform ->Connection Manager، أضف اتصالاً إلى مربع Linux الخاص بك:
بعد إنشاء الاتصال عبر SSH، أنشئ Empty project (Linux) template:
يمكنك بعد ذلك إضافة ملف مصدر C جديد واستبداله بهذا المحتوى. باستخدام واجهات برمجة تطبيقات ODBC SQLAllocHandle وSQLSetConnectAttr وSQLDriverConnect، ينبغي أن تتمكن من تكوين وإنشاء اتصال بقاعدة بياناتك. كما هو الحال مع نموذج Windows ODBC، تحتاج إلى استبدال استدعاء SQLDriverConnect مع التفاصيل من معلمات سلسلة اتصال قاعدة بياناتك التي تم نسخها من مدخل Microsoft Azure مسبقاً.
retcode = SQLDriverConnect(
hdbc, NULL, "Driver=ODBC Driver 13 for SQL"
"Server;Server=<yourserver>;Uid=<yourusername>;Pwd=<"
"yourpassword>;database=<yourdatabase>",
SQL_NTS, outstr, sizeof(outstr), &outstrlen, SQL_DRIVER_NOPROMPT);
الشيء الأخير الذي يجب فعله قبل التحويل البرمجي هو إضافة odbc كعنصر تابع للمكتبة:
لبدء تشغيل تطبيقك، اجلب Linux Console من قائمة Debug:
إذا كان الاتصال ناجحاً، فينبغي أن تشاهد الآن اسم قاعدة البيانات الحالية مطبوعاً في Linux Console:
تهانينا! لقد أكملت البرنامج التعليمي بنجاح ويمكنك الآن الاتصال بـAzure SQL Database من C++ على أنظمة Windows وLinux الأساسية.
احصل على حل كامل للبرنامج التعليمي C/C++
يمكنك العثور على حل GetStarted الذي يحتوي على جميع النماذج في هذه المقالة على GitHub:
- نموذج ODBC C ++ Windows، قم بتنزيل نموذج Windows C++ ODBC للاتصال بـAzure SQL
- نموذج ODBC C ++ Linux، قم بتنزيل نموذج Windows C++ ODBC للاتصال بـAzure SQL
الخطوات التالية
- راجع نظرة عامة على تطوير SQL Database
- لمزيد من المعلومات حول مرجع واجهة برمجة تطبيقات ODBC