技术文摘
Node.js中使用MySQL进行模糊查询
2025-01-10 18:51:41 小编
Node.js 中使用 MySQL 进行模糊查询
在 Node.js 开发中,与 MySQL 数据库交互是常见需求,而模糊查询能为数据检索提供更大灵活性。下面就来探讨如何在 Node.js 中使用 MySQL 实现模糊查询。
要搭建好开发环境。确保已经安装了 Node.js,然后在项目目录下通过命令行执行 npm init -y 初始化项目,接着安装 mysql 模块,命令为 npm install mysql。
连接 MySQL 数据库是基础。创建一个 JavaScript 文件,比如 db.js,在其中编写数据库连接代码:
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'yourpassword',
database: 'yourdatabase'
});
connection.connect((err) => {
if (err) {
console.error('数据库连接错误: ', err);
return;
}
console.log('成功连接到数据库');
});
module.exports = connection;
有了连接,就可以进行模糊查询操作。假设我们有一个 users 表,想要查询用户名包含特定字符的记录。在另一个文件,例如 query.js 中编写如下代码:
const connection = require('./db.js');
const searchTerm = '某';
const sql = `SELECT * FROM users WHERE username LIKE '%${searchTerm}%'`;
connection.query(sql, (err, results) => {
if (err) {
console.error('查询错误: ', err);
return;
}
console.log('查询结果: ', results);
});
connection.end();
上述代码中,searchTerm 是要查询的关键词,LIKE 语句用于实现模糊查询,% 是通配符,表示任意数量的任意字符。
需要注意,这种简单的拼接方式存在 SQL 注入风险。为了避免,可使用 mysql 模块提供的占位符方式:
const searchTerm = '某';
const sql = `SELECT * FROM users WHERE username LIKE?`;
const values = [`%${searchTerm}%`];
connection.query(sql, values, (err, results) => {
if (err) {
console.error('查询错误: ', err);
return;
}
console.log('查询结果: ', results);
});
connection.end();
在实际应用中,要根据具体业务逻辑调整查询条件和表结构。通过上述方法,能在 Node.js 项目里安全、高效地使用 MySQL 进行模糊查询,为用户提供更灵活、精准的数据检索体验,提升应用的实用性和用户满意度。
- Vue标签转HTML及解决安全过滤问题的方法
- Emmet语法中*n无效的原因
- 使用 `` 标签获取 offsetWidth 属性为何会报错
- 提升JavaScript开发效率的实用技巧
- JavaScript 闭包:函数执行后变量仍可用的原因
- 元素有宽度却出现 offsetWidth 报错的原因
- Vue中渲染包含HTML标签字符串的方法
- JavaScript闭包:函数执行完变量仍可访问的原因
- uniapp图片加载显示灰块问题排查方法
- 代码读取offsetWidth属性报错原因
- Uniapp Image组件显示灰块 排查base64代码错误方法
- Flex布局下子元素设width: 0;与flex: 1;防止内容被挤压原因
- CSS clip-path 属性绘制外边框连接等腰梯形的方法
- Vue项目里样式穿透失效:common.css文件中deep为何失灵
- Vue中正确转换后台返回HTML标记为HTML格式的方法