下面我将详细讲解“浅析node连接数据库(express+mysql)”的完整攻略。
1. 什么是Node连接数据库
在使用Node.js搭建Web服务器时,经常需要与数据库进行交互,用来操作数据库的MySQL数据库是目前最为流行的开源数据库之一。Node.js通过库文件mysqljs来实现对MySQL数据库的连接和操作。
2. 使用Node连接MySQL数据库
2.1 安装MySQL库
首先需要安装mysql库和express库。通过npm安装express和mysql库:
npm install mysql --save
npm install express --save
2.2 连接MySQL数据库
连接MySQL数据库需要mysql.js库,可以通过以下代码来安装该库:
const mysql = require('mysql');
const db = mysql.createConnection({
host : 'localhost',
user : 'user_name',
password : 'user_password',
database : 'database_name'
});
通过mysql.createConnection()
方法创建一个连接,在其中传入数据库的主机名、用户名、密码和数据库名。
2.3 查询MySQL数据库中的数据
使用query()
方法查询数据:
const mysql = require('mysql');
const db = mysql.createConnection({
host : 'localhost',
user : 'user_name',
password : 'user_password',
database : 'database_name'
});
db.connect();
db.query('SELECT * FROM user', (error, results, fields) => {
if (error) throw error;
console.log(results);
});
db.end();
首先调用connect()方法连接到数据库,然后通过query()方法查询数据,在回调函数中处理查询结果,在最后通过调用end()方法关闭连接。
2.4 插入MySQL数据库中的数据
使用query()
方法插入数据:
const mysql = require('mysql');
const db = mysql.createConnection({
host : 'localhost',
user : 'user_name',
password : 'user_password',
database : 'database_name'
});
db.connect();
const data = { name: 'user', age: 21 };
db.query('INSERT INTO user SET ?', data, (error, results, fields) => {
if (error) throw error;
console.log(results);
});
db.end();
首先调用connect()方法连接到数据库,然后通过query()方法插入数据,在回调函数中处理插入结果,在最后通过调用end()方法关闭连接。
3. 示例说明
3.1 查询MySQL数据库中的数据的示例
假设你的数据库user表中有以下数据:
id | name | age |
---|---|---|
1 | Tom | 18 |
2 | Jerry | 19 |
3 | Mike | 20 |
你想查询整个表,可以用以下代码进行查询:
const mysql = require('mysql');
const db = mysql.createConnection({
host : 'localhost',
user : 'user_name',
password : 'user_password',
database : 'database_name'
});
db.connect();
db.query('SELECT * FROM user', (error, results, fields) => {
if (error) throw error;
console.log(results);
});
db.end();
查询结果为:
[ { id: 1, name: 'Tom', age: 18 },
{ id: 2, name: 'Jerry', age: 19 },
{ id: 3, name: 'Mike', age: 20 } ]
3.2 插入MySQL数据库中的数据的示例
假设你的数据库user表现在是空的,插入一条数据:
const mysql = require('mysql');
const db = mysql.createConnection({
host : 'localhost',
user : 'user_name',
password : 'user_password',
database : 'database_name'
});
db.connect();
const data = { name: 'user', age: 21 };
db.query('INSERT INTO user SET ?', data, (error, results, fields) => {
if (error) throw error;
console.log(results);
});
db.end();
插入数据之后,表中数据为:
id | name | age |
---|---|---|
1 | user | 21 |
至此,我们就完成了Node连接MySQL数据库的整个过程。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅析node连接数据库(express+mysql) - Python技术站