How to connect SQL Server database from JavaScript in the browser ? - GeeksforGeeks

16 Nov, 2021
There is no common way to connect to SQL Server database from JavaScript client, every browser has it’s own API and packages to connect to SQL Server. For example, in Windows operating system, Internet Explorer has a class name called ActiveXObject which is used to create instances of OLE Automation objects, and these objects help us to create an environment for SQL Driver connection. It is not recommended to use JavaScript clients to access databases for several reasons. For example, it is not good practice, there are some security issues and it offers vulnerabilities issues. Node.js provides us an environment to run JavaScript code outside the browser and also it offers useful benefits like security, scalability, robustness, and may more. SQL Server: Microsoft SQL Server is a relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which may run either on the same computer or on another computer across a network. Node.Js: Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside a web browser. 
Here, We are representing the connection of the MS SQL Server database using JavaScript in Node.js environment. To get started we need to install certain packages and MS SQL Server Node.js must be installed in the local system.
 
It’s strongly recommended to use any command-line tool(CLI) like terminal, cmd to run following queries and commands.
Before getting started MS SQL Server should be installed in the local system. 
Hit listed command to get connect with SQL Server.
sqlcmd -S localhost -U SA -P "<password>"
Issue listed queries to create a database name called ‘geek’.
> CREATE DATABASE geek;
> GO
To use created data issue listed queries.
> Use <your database name>;
> GO
Issue listed queries to create a table name called ‘student’ with three fields id, firstname and lastname.
> CREATE TABLE student (id INT, 
    firstname NVARCHAR(30), lastname NVARCHAR(30));
> GO
Issue listed queries to insert some values into table ‘student’.
> INSERT INTO student VALUES (1, 'Stephen', 'Hawking');
> INSERT INTO student VALUES (2, 'Isaac', 'Newton');
> INSERT INTO student VALUES (3, 'Chandrasekhara Venkata', 'Raman');
> GO
To check entries of table issue listed queries.
> SELECT * from student;
> GO
Before getting started Node.js should be installed in the local system. 
To create Node.js environment issue following command.
npm init
Express allows us to set up middlewares to respond to HTTP Requests.
npm install express --save
Microsoft SQL Server client give us functionality to connect with SQL server.
npm install mssql --save
To begin with Node.js part, we need to create our server file server.js in our local system.
javascript
// Requiring modulesconst express = require('express');const app = express();const mssql = require("mysql"); // Get requestapp.get('/', function (req, res) {     // Config your database credential    const config = {        user: 'SA',        password: 'Your_Password',        server: 'localhost',        database: 'geek'    };     // Connect to your database    mssql.connect(config, function (err) {         // Create Request object to perform        // query operation        var request = new mssql.Request();         // Query to the database and get the records        request.query('select * from student',            function (err, records) {                 if (err) console.log(err)                 // Send records as a response                // to browser                res.send(records);             });    });}); var server = app.listen(5000, function () {    console.log('Server is listening at port 5000...');});
Run server.js file using the following command:  
node server.js
After executing the above command, you will see the following output on your console:  
Server is listening at port 5000...
Now hit the url http://localhost:5000/ in the local browser.
Output:
adnanirshad158
samuelliebert
JavaScript-Misc
Node.js
JavaScript
Node.js
Web Technologies
Web technologies Questions
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Difference between var, let and const keywords in JavaScript
Difference Between PUT and PATCH Request
How to get character array from string in JavaScript?
Remove elements from a JavaScript Array
How to get selected value in dropdown list using JavaScript ?
Installation of Node.js on Linux
How to update Node.js and NPM to next version ?
Node.js fs.readFileSync() Method
Node.js fs.readFile() Method
How to update NPM ?