如何利用 Node.js 和 MySQL 快速搭建简单的增删查改 API

打印 上一主题 下一主题

主题 899|帖子 899|积分 2697


摘要

通过本文,你将学会如何利用 Node.js 和 MySQL 搭建一个简单的 RESTful API,包括创建数据库、创建表、插入数据、查询数据、更新数据以及删除数据的完整操作示例。
正文

在现代 Web 开发中,Node.js 与 MySQL 的组合非常流行,它们的高性能和易用性让开发者可以快速搭建数据驱动的应用程序。本教程将通过具体的代码示例,指导你完成以下操作:

  • 创建数据库
  • 创建表
  • 插入数据
  • 查询数据
  • 更新数据
  • 删除数据
以下是完整代码及操作解析:
1. 环境预备

在开始之前,请确保你已经安装了以下工具:

  • Node.js
  • MySQL
然后安装须要的 Node.js 包:
  1. npm install express mysql
复制代码
2. 初始化项目

以下是项目初始化的基本代码:
  1. const express = require("express");
  2. const app = express();
  3. const mysql = require("mysql");
  4. // 创建数据库连接
  5. const db = mysql.createConnection({
  6.     host: "localhost",
  7.     user: "root",
  8.     password: "root",
  9.     database: "nodemysql"
  10. });
  11. // 连接数据库
  12. db.connect((err) => {
  13.     if (err) throw err;
  14.     console.log('连接成功');
  15. });
  16. // 启动服务
  17. app.listen(3000, () => {
  18.     console.log("服务器开启在3000端口....");
  19. });
复制代码
此段代码中,我们初始化了 Express 和 MySQL 并建立了数据库毗连。服务运行在本地 3000 端口。
3. 功能实现

1)创建数据库
访问 http://localhost:3000/createdb 即可创建名为 nodemysql 的数据库:
  1. app.get("/createdb", (req, res) => {
  2.     let sql = "CREATE DATABASE nodemysql";
  3.     db.query(sql, (err, result) => {
  4.         if (err) throw err;
  5.         res.send("Database created successfully...");
  6.     });
  7. });
复制代码
2)创建表
创建一个 posts 表,此中包括 id(主键、自增)、title 和 body 字段:
  1. app.get("/createpoststable", (req, res) => {
  2.     let sql = "CREATE TABLE posts(id int AUTO_INCREMENT, title VARCHAR(255), body VARCHAR(255), PRIMARY KEY(id))";
  3.     db.query(sql, (err, result) => {
  4.         if (err) throw err;
  5.         res.send("Posts table created successfully...");
  6.     });
  7. });
复制代码
3)插入数据
通过 API 插入一条记录:
  1. app.get("/addpost2", (req, res) => {
  2.     let post = { title: "post two", body: "content of post two" };
  3.     let sql = "INSERT INTO posts SET ?";
  4.     db.query(sql, post, (err, result) => {
  5.         if (err) throw err;
  6.         res.send("Post added successfully...");
  7.     });
  8. });
复制代码
4)查询所有数据
利用以下代码获取 posts 表中的所有记录:
  1. app.get("/getposts", (req, res) => {
  2.     let sql = "SELECT * FROM posts";
  3.     db.query(sql, (err, results) => {
  4.         if (err) throw err;
  5.         res.json(results);
  6.     });
  7. });
复制代码
5)查询单条数据
通过动态 ID 查询特定记录:
  1. app.get("/getposts/:id", (req, res) => {
  2.     let sql = `SELECT * FROM posts WHERE id = ${req.params.id}`;
  3.     db.query(sql, (err, result) => {
  4.         if (err) throw err;
  5.         res.json(result);
  6.     });
  7. });
复制代码
6)更新数据
更新指定 ID 的记录内容:
  1. app.get("/updatepost/:id", (req, res) => {
  2.     let newTitle = "Updated Title";
  3.     let sql = `UPDATE posts SET title = '${newTitle}' WHERE id = ${req.params.id}`;
  4.     db.query(sql, (err, result) => {
  5.         if (err) throw err;
  6.         res.send(`Post with ID ${req.params.id} updated successfully...`);
  7.     });
  8. });
复制代码
7)删除数据
通过 ID 删除一条记录:
  1. app.get("/deletepost/:id", (req, res) => {
  2.     let sql = `DELETE FROM posts WHERE id = ${req.params.id}`;
  3.     db.query(sql, (err, result) => {
  4.         if (err) throw err;
  5.         res.send("Post deleted successfully...");
  6.     });
  7. });
复制代码
4. 总结

通过本教程,你已经掌握了如何利用 Node.js 和 MySQL 构建一个底子的增删查改 API。这些操作可以资助你快速构建数据驱动的 Web 应用程序。如果想进一步提升,可以添加用户认证或优化接口的安全性。
赶紧试试吧!
 
本文为一只懒羊原创作品   原文地址:​​https://yfcov.com/exploit/n/rhsynjhmksdjjddzscga-112.html​

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用户云卷云舒

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表