MySQL – Node.js Syntax
Node.js is a JavaScript runtime environment that allows developers to run JavaScript code outside of a web browser, enabling server-side scripting.
When we talk about a Node.js MySQL connector, we are referring to a specific library that facilitates communication between a Node.js application and a MySQL database. This connector enables developers to interact with a MySQL database by providing methods and functionalities that simplify tasks like querying, updating, and managing data within the database using JavaScript code. Essentially, it acts as a bridge, allowing Node.js applications to seamlessly connect with and manipulate data stored in a MySQL database.
Installation “mysql” package
To use MySQL with Node.js, you can use the “mysql” package, which is a popular MySQL driver for Node.js. Here are the steps to install Node.js and the MySQL package −
Step 1: Install Node.js
Visit the official Node.js website (https://nodejs.org/) and download the latest version of Node.js for your operating system. Follow the installation instructions provided on the website.
Step 2: Create a Node.js Project
Create a new directory for your Node.js project and navigate to it using your terminal or command prompt.
mkdir mynodeproject cd mynodeproject
Step 3: Initialize a Node.js Project
Run the following command to initialize a new Node.js project. This will create a ”package.json” file.
npm init -y
Step 4: Install the MySQL Package
Install the “mysql” package using the following command:
npm install mysql
Step 5: Create a JavaScript File
Create a JavaScript file (e.g., app.js) in your project directory.
Step 6: Run the Node.js Script
Run your Node.js script using the following command:
node app.js
Now, you have successfully installed the MySQL Node.js connector (mysql package) for your Node.js project.
NodeJS Functions to Access MySQL
In Node.js, the “mysql” package provides a set of functions to interact with MySQL databases. Here are some of the major functions you can use−
S.No | Function & Description |
---|---|
1 |
createConnection(config) Creates a new MySQL connection. |
2 |
connect(callback) Establishes a connection to the MySQL server. |
3 |
query(sql, values, callback) Executes a SQL query on the connected MySQL database. You can provide placeholders in the SQL query and pass values as an array to replace the placeholders. |
4 |
execute(sql, values, callback) Similar to the query function, but specifically designed for executing non-select queries (e.g., INSERT, UPDATE, DELETE). |
5 |
beginTransaction(callback) Starts a new transaction. |
6 |
commit(callback) Commits the current transaction. |
7 |
rollback(callback) Rolls back the current transaction. |
8 |
end() Closes the MySQL connection. |
Basic Example
Following are the steps to connect and communicate with a MySQL database using Node.js −
- Download and install Node.js
- Create a new directory, navigate to it, and run ”npm init -y”.
- Run ”npm install mysql”.
- Create a JavaScript file (e.g., app.js) and use the “mysql” package to connect to the MySQL database.
- Use the query or execute functions to perform SQL queries on the database.
- Implement error handling for database operations. Close the database connection when finished.
- Execute your Node.js script with node app.js.
The following example shows a generic syntax of NodeJS to call any MySQL query.
const mysql = require("mysql2"); // Create a connection to the MySQL database const connection = mysql.createConnection({ host: ''your-mysql-hostname'', user: ''your-mysql-username'', password: ''your-mysql-password'', database: ''your-mysql-database'', }); // Connect to the database connection.connect((err) => { if (err) { console.error(''Error connecting to MySQL:'', err); return; } console.log(''Connected to MySQL database''); // Perform MySQL operations here connection.query("SELECT * FROM your_table", (err, results) => { if (err) throw err; console.log(''Query result:'', results); }); // Close the connection when done connection.end((err) => { if (err) console.error(''Error closing MySQL connection:'', err); else console.log(''Connection closed''); }); });