التشغيل السريع: استخدام Node.js للاستعلام عن قاعدة بيانات في Azure SQL Database أو Azure SQL Managed Instance
ينطبق على: Azure SQL Database Azure SQL Managed Instance
في هذا التشغيل السريع، يمكنك استخدام Node.js للاتصال بقاعدة بيانات وبيانات الاستعلام.
المتطلبات الأساسية
للتشغيل السريع، تحتاج إلى:
حساب Azure باشتراك نشط. أنشئ حساباً مجاناً.
إجراء قاعدة بيانات SQL مثيل SQL المدار SQL Server على Azure VM إنشاء المدخل المدخل المدخل CLI CLI PowerShell PowerShell PowerShell تكوين قاعدة جدار حماية IP على مستوى الخادم الاتصال من جهاز ظاهري الاتصال من أماكن محلية الاتصال بمثيل SQL Server بيانات التحميل Adventure Works يتم تحميلها لكل بدء سريع استعادة Wide World Importers استعادة Wide World Importers استعادة أو استيراد Adventure Works من ملف BACPAC من GitHub استعادة أو استيراد Adventure Works من ملف BACPAC من GitHub البرامج ذات الصلة بـ Node.js
تثبيت Homebrew وNode.js، ثم قم بتثبيت برنامج تشغيل ODBC وSQLCMD باستخدام الخطوتين 1.2 و1.3 في إنشاء تطبيقات Node.js باستخدام SQL Server على macOS.
هام
تتم كتابة البرامج النصية في هذه المقالة لاستخدام قاعدة بيانات Adventure Works.
ملاحظة
يمكنك اختيارياً اختيار استخدام Azure SQL Managed Instance.
للإنشاء والتكوين، استخدم مدخل Azure أو PowerShell أو CLI، ثم قم بإعداد اتصال محلي أو اتصال جهاز ظاهري.
لتحميل البيانات، راجع الاستعادة باستخدام BACPAC مع ملف Adventure Works، أو راجع استعادة قاعدة بيانات Wide World Importers.
الحصول على معلومات اتصال الخادم
احصل على معلومات الاتصال التي تحتاجها للاتصال بقاعدة البيانات في Azure SQL Database. ستحتاج إلى اسم الخادم المؤهل بالكامل أو اسم المضيف واسم قاعدة البيانات ومعلومات تسجيل الدخول للإجراءات القادمة.
تسجيل الدخول إلى مدخل Azure.
انتقل إلى SQL Databases أو صفحة SQL Managed Instances.
في صفحة Overview، راجع اسم الخادم المؤهل بالكامل بجوار Server name لقاعدة بيانات في Azure SQL Database أو اسم الخادم المؤهل بالكامل (أو عنوان IP) بجوار Host لـ Azure SQL Managed Instance أو SQL Server على Azure VM. لنسخ اسم الخادم أو اسم المضيف، مرر فوقه وحدد الأيقونة Copy.
ملاحظة
للحصول على معلومات الاتصال لـ SQL Server على Azure VM، راجع Connect to a SQL Server.
إنشاء المشروع
افتح موجه الأوامر، وقم بإنشاء مجلد يسمى sqltest. افتح المجلد الذي قمت بإنشائه، وشغل الأمر التالي:
npm init -y
npm install tedious
إضافة التعليمات البرمجية للاستعلام عن قاعدة البيانات
في محرر النص المفضل لديك، قم بإنشاء ملف جديد، sqltest.js.
استبدل محتوياته بالتعليمة البرمجية التالية. ثم أضف القيم المناسبة لخادمك وقاعدة البيانات والمستخدم وكلمة المرور.
const { Connection, Request } = require("tedious"); // Create connection to database const config = { authentication: { options: { userName: "username", // update me password: "password" // update me }, type: "default" }, server: "your_server.database.windows.net", // update me options: { database: "your_database", //update me encrypt: true } }; /* //Use Azure VM Managed Identity to connect to the SQL database const config = { server: process.env["db_server"], authentication: { type: 'azure-active-directory-msi-vm', }, options: { database: process.env["db_database"], encrypt: true, port: 1433 } }; //Use Azure App Service Managed Identity to connect to the SQL database const config = { server: process.env["db_server"], authentication: { type: 'azure-active-directory-msi-app-service', }, options: { database: process.env["db_database"], encrypt: true, port: 1433 } }); */ const connection = new Connection(config); // Attempt to connect and execute queries if connection goes through connection.on("connect", err => { if (err) { console.error(err.message); } else { queryDatabase(); } }); connection.connect(); function queryDatabase() { console.log("Reading rows from the Table..."); // Read all rows from table const request = new Request( `SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName FROM [SalesLT].[ProductCategory] pc JOIN [SalesLT].[Product] p ON pc.productcategoryid = p.productcategoryid`, (err, rowCount) => { if (err) { console.error(err.message); } else { console.log(`${rowCount} row(s) returned`); } } ); request.on("row", columns => { columns.forEach(column => { console.log("%s\t%s", column.metadata.colName, column.value); }); }); connection.execSql(request); }
ملاحظة
لمزيد من المعلومات حول استخدام الهوية المدارة للمصادقة، أكمل البرنامج التعليمي للوصول إلى البيانات عبر الهوية المدارة.
ملاحظة
يستخدم مثال التعليمات البرمجية قاعدة بيانات نموذج AdventureWorksLT في Azure SQL Database.
تشغيل التعليمات البرمجية
في موجه الأوامر، قم بتشغيل البرنامج.
node sqltest.js
تحقق من إرجاع أفضل 20 صفًا، وأغلق نافذة التطبيق.
الخطوات التالية
الاتصال والاستعلام على Windows/Linux/macOS مع .NET core، أو Visual Studio Code، أو SSMS (Windows فقط)
الشروع في العمل مع .NET Core على أنظمة التشغيل Windows / Linux / macOS باستخدام سطر الأوامر
تصميم قاعدة البيانات الأولى في Azure SQL Database باستخدام .NET أو SSMS