دسترسی به بانک اطلاعاتی SQL Server در Node.js


برای دسترسی پیدا کردن به یک دیتابیس از نوع MS SQL Server نیاز است که در ابتدا driver های آن را نصب کنید. driver های مختلفی برای بانک اطلاعاتی SQL Server در NPM وجود دارد که ما در این قسمت از یکی از آنها به نام mssql استفاده خواهیم کرد.

نصب کردن Driver مربوط به MS SQL Server

در ابتدا برای دسترسی پیدا کردن به بانک اطلاعاتی MS SQL Server نیاز است که driver آن یعنی mssql را با استفاده از NPM و دستور npm install mssql نصب کنید. این موضوع باعث می‌شود تا فولدر مربوط به ماژول mssql در برنامه Node.js شما اضافه شود. در ادامه ما از بانک اطلاعاتی SQL در برنامه Node.js استفاده خواهیم کرد.

ذکر این نکته نیز ضروری است که در این آموزش از mssql v2.3.1 استفاده می کنیم. پس از نصب کردن driver مربوطه آماده دسترسی به بانک اطلاعاتی mssql هستیم. ما به یک بانک اطلاعاتی local که از نوع SQLExpress می باشد، وصل خواهیم شد و اطلاعات مربوط به یک جدول به نام Student که در یک بانک اطلاعاتی به نام SchoolDB وجود دارد را دریافت خواهیم کرد. این بانک اطلاعاتی و جدول مربوطه در تصویر زیر نشان داده شده اند.

به منظور آغاز به کار ابتدا یک فایل به نام server.js را ایجاد کرده و کد زیر را در آن قرار بدهید.

var express = require('express');

var app = express();

app.get('/', function (req, res) {

var sql = require("mssql");

// config for your database

var config = {

user: 'sa',

password: 'mypassword',

server: 'localhost',

database: 'SchoolDB'

};

// connect to your database

sql.connect(config, function (err) {

if (err) console.log(err);

// create Request object

var request = new sql.Request()

// query to the database and get the records

request.query('select * from Student', function (err, recordset) {

if (err) console.log(err)

// send records as a response

res.send(recordset);

});

});

});

var server = app.listen(5000, function () {

console.log('Server is running..');

});

در مثال بالا ما ماژول mssql را import کرده و سپس از متد connect برای متصل شدن به بانک اطلاعاتی SchoolDB استفاده کرده‌ایم. علاوه بر این شیء config که شامل اطلاعات مربوط به دیتابیس از قبیل userName و password و database server و database name می باشد را لحاظ نموده ایم. پس از برقراری یک اتصال موفق به دیتابیس با استفاده از sql.request اقدام به اجرا کردن query مورد نظر بر روی دیتابیس کرده و داده‌های مورد نظرمان را بازیابی کرده ایم.

لطفاً در ادامه با اجرای دستور node server.js فایل بالا را اجرا کرده و سپس به آدرس http://localhost:5000 بروید تا آرایه‌ای از تمامی رکوردهای موجود در جدول Student را شبیه به تصویر زیر دریافت کنید.

بنابراین تا به اینجای کار توانستیم به یک دیتابیس از نوع MS SQL Server متصل شده و یک query را با استفاده از ماژول mssql بر روی آن اجرا کنیم.

منبع:وبسایت پرووید