Node.js实战:连接MySQL执行CRUD操作指南
72 浏览量
更新于2024-08-30
收藏 91KB PDF 举报
"本文主要介绍如何使用Node.js连接MySQL数据库并执行基本的CRUD(创建、读取、更新、删除)操作。文章首先指出虽然很多Node.js教程使用MongoDB作为示例,但作者选择MySQL,因为对它有一定了解。文中使用的数据库驱动是`mysql`,版本为2.5.4。在开始之前,需要配置数据库连接,包括主机名、用户名、密码、端口和数据库名称。然后,假设存在一个名为`my_news_test`的数据库,其中有一个`node_user`表,包含id(自增主键)、name(有唯一约束)和age(年龄)三个字段。文章接下来将展示如何创建数据库和插入五条记录。"
在Node.js中连接MySQL并进行数据操作,首先需要安装`mysql`库,可以通过npm(Node.js包管理器)来安装:
```bash
npm install mysql
```
之后,可以创建数据库连接:
```javascript
var mysql = require('mysql');
var connection = mysql.createConnection({
host: '127.0.0.1',
user: 'root',
password: 'root123',
port: '3306',
database: 'my_news_test'
});
```
这里的`createConnection`方法用于设置连接参数,如数据库服务器地址、用户名、密码等。
连接成功后,可以进行数据操作。例如,插入数据到`node_user`表:
```javascript
connection.connect(function(err) {
if (err) throw err;
var sql = "INSERT INTO node_user (name, age) VALUES ('John Doe', 30)";
connection.query(sql, function (err, result) {
if (err) throw err;
console.log("Record inserted successfully");
connection.end(); // 关闭连接
});
});
```
这里使用`query`方法执行SQL语句。对于读取数据,可以使用类似的方式:
```javascript
connection.connect(function(err) {
if (err) throw err;
var sql = "SELECT * FROM node_user";
connection.query(sql, function (err, results) {
if (err) throw err;
console.table(results);
connection.end();
});
});
```
更新数据:
```javascript
connection.connect(function(err) {
if (err) throw err;
var sql = "UPDATE node_user SET age = 31 WHERE name = 'John Doe'";
connection.query(sql, function (err, result) {
if (err) throw err;
console.log("Record updated successfully");
connection.end();
});
});
```
以及删除数据:
```javascript
connection.connect(function(err) {
if (err) throw err;
var sql = "DELETE FROM node_user WHERE name = 'John Doe'";
connection.query(sql, function (err, result) {
if (err) throw err;
console.log("Record deleted successfully");
connection.end();
});
});
```
以上就是使用Node.js连接MySQL并进行增、删、改、查的基本操作。在实际应用中,通常会封装成更复杂的数据库操作模块,并处理异步回调的问题,比如使用Promise或async/await来提高代码可读性和可维护性。此外,对于大量数据操作,应考虑事务处理以确保数据一致性。
684 浏览量
1993 浏览量
839 浏览量
175 浏览量
176 浏览量
2021-02-12 上传
2024-01-04 上传
252 浏览量
602 浏览量
weixin_38644780
- 粉丝: 2
最新资源
- 投资组合管理:HTML技术的软管应用
- 原神伤害计算器Java程序开发分享
- 英语学习方法与技巧大全
- 高效部署Webpack构建资产:html-webpack-deploy-plugin使用指南
- C语言实现的磁盘调度算法性能分析
- IBM MQ4.6 链接demo原生jar包免费下载
- 欧美风格医疗中心网页模板设计指南
- 掌握Java基础:如何使用Java发起网络请求
- 掌握Struts2框架中的简单数据校验技巧
- YY协议网页版实现无需账号即可多人在线
- Dashing 示例:展示所有默认小部件功能
- GDP32电法软件:可控源电磁法数据处理与反演
- 锚插件-gpl:开源图像分析平台的GPL授权组件
- 绿色新款服饰企业网页模板设计
- STM32系列用AD7616串行驱动实现硬件CRC校验
- 提升Solr库数据处理能力:ISBN与LCCN标准化分析器