在 Node.js 中,连接 MySQL 数据库可以使用多种方式,如使用官方的 mysql 模块、使用第三方库 sequelize 等,下面我们就介绍一下如何使用 mysql 模块来连接 MySQL 数据库,并对数据库进行操作。
安装和使用 mysql 模块
在项目中使用 mysql 模块,需要先通过 npm 安装它:
npm install mysql
然后在代码中引入该模块:
const mysql = require('mysql');接下来,我们就可以开始连接数据库并对数据库进行操作。
连接 MySQL 数据库
连接 MySQL 数据库需要先创建一个连接对象,该对象包含连接数据库的信息,如主机地址、用户名、密码、数据库名等。下面是连接 MySQL 数据库的示例代码:
-- -------------------- ---- -------
----- ---------- - ------------------------
----- ------------
----- -------
--------- -----------
--------- ------
---
------------------------ -- -
-- ----- -
-------------------- ----------- - - -----------
-------
-
---------------------- -- -- - - ---------------------
---在这个示例代码中,我们创建了一个连接对象 connection,并通过其中的 host、user、password、database 字段来指定连接数据库的相关信息,然后通过调用 connection.connect() 方法来建立与数据库的连接。
建立连接的结果可以通过 connection.threadId 属性来获取,如果连接成功,该属性的值就是与数据库建立连接的 id;如果连接失败,则输出错误信息。
查询数据库
在建立连接后,就可以对数据库进行查询操作了。下面是一个查询示例代码:
connection.query('SELECT * FROM users', (error, results, fields) => {
if (error) throw error;
console.log('The solution is: ', results);
});在这个示例代码中,我们通过 connection.query() 方法来执行一条 SQL 查询语句,查询的是 users 表中的所有数据。其中,error 表示查询是否出错,results 表示查询返回的结果,fields 表示查询返回的数据列信息。
插入数据
插入数据操作和查询数据操作类似,需要通过 connection.query() 方法来执行插入数据的 SQL 语句。下面是一个插入数据的示例代码:
const user = { name: 'John', email: 'john@example.com' };
connection.query('INSERT INTO users SET ?', user, (error, results, fields) => {
if (error) throw error;
console.log('Insert successful!');
});在这个示例代码中,我们首先定义一个对象 user,其中包含了要插入的数据。然后通过 connection.query() 方法执行插入数据的 SQL 语句,在 SQL 语句中使用 SET ? 的方式来插入数据,? 的值由第二个参数 user 指定。
更新数据
更新数据操作和插入数据操作类似,需要通过 connection.query() 方法来执行更新数据的 SQL 语句。下面是一个更新数据的示例代码:
connection.query('UPDATE users SET email = ? WHERE name = ?', ['new_email@example.com', 'John'], (error, results, fields) => {
if (error) throw error;
console.log('Update successful!');
});在这个示例代码中,我们通过 connection.query() 方法执行更新数据的 SQL 语句,使用 WHERE 子句来筛选出要更新的数据行,然后通过数组 ['new_email@example.com', 'John'] 来指定要更新的数据。
删除数据
删除数据操作和更新数据操作类似,需要通过 connection.query() 方法来执行删除数据的 SQL 语句。下面是一个删除数据的示例代码:
connection.query('DELETE FROM users WHERE name = ?', ['John'], (error, results, fields) => {
if (error) throw error;
console.log('Delete successful!');
});在这个示例代码中,我们通过 connection.query() 方法执行删除数据的 SQL 语句,使用 WHERE 子句来筛选出要删除的数据行,然后通过数组 ['John'] 来指定要删除的数据。
总结
到这里,我们就介绍了在 Node.js 中如何使用 mysql 模块进行 MySQL 数据库的连接和操作,包括查询、插入、更新和删除数据等基本操作。通过这些操作,我们可以对数据库进行增删改查,从而满足我们对数据库的需求。注意,在实际应用中,我们需要对数据库的连接信息进行保护,以防止数据库信息泄漏,同时还需要注意对数据库的性能优化,以提高系统的整体性能。
Source: FunTeaLearn,Please indicate the source for reprints https://funteas.com/post/645789e4968c7c53b0a3506b