使用node实现链接数据库并对数据库进行增删改查的后端接口

环境

node

npm

编辑器

vscode

项目配置

新建目录 用vscode打开

终端输入

npm init -y

npm install mysql

npm install express

代码

安装好之后的代码页面

新建

在根目录新建api.js文件

cpp 复制代码
const express = require('express');
const db = require('./db/index');
const app = express();
app.get('/users', (req, res) => {
  db.query('SELECT * FROM message', (error, results) => {
    if (error) {

      res.status(500).json({ error: `Failed to fetch users${error}` });
    } else {
      res.json({ success: true, data: results });
    }
  });
});
const port = 3001; // 你可以根据需要更改端口号

app.listen(port, () => {
  console.log(`Server is running on port ${port}`);
});

在根目录新建文件夹db 文件夹下新建index.js

cpp 复制代码
let mysql = require("mysql");

let db = mysql.createPool({
  host: "localhost", //数据库IP地址
  // host:"localhost",
  port: "3306",//数据库端口
  user: "root", //数据库登录账号
  password: "123456", //数据库登录密码
  database: "message", //要操作的数据库
});

module.exports = db;

目录结构为

测试接口

终端输入node api.js回车

可以看到我写的一个测试接口路径是/users

我的端口是3001

在浏览器输入http://localhost:3001/users访问接口

发现返回了数据

看看和数据库的一样不

postman测试

注意

你在运行端口的时候改代码是不生效的 没使用热部署类似的功能 所以要重新运行端口

相关推荐
Lee川4 小时前
Milvus 实战:当 RAG 遇上向量数据库,从"玩具 Demo"到"生产可用的"那一步
前端·数据库·人工智能
网管NO.16 小时前
SQL 排序分页精讲!ORDER BY+LIMIT 全套用法,报表分页
数据库·sql
MRSM_016 小时前
InfluxDB vs TimescaleDB,谁更适合你的场景
数据库
CAE虚拟与现实7 小时前
Redis如何保证存和读的过程中数据的一致性?
数据库·redis·缓存
我爱cope10 小时前
【Agent智能体4 | 智能体AI的应用】
数据库·人工智能·职场和发展
知识分享小能手11 小时前
Flask入门学习教程,从入门到精通,数据库操作 — 知识点详解与案例代码(4)
数据库·学习·flask
我是一颗柠檬11 小时前
【MySQL全面教学】MySQL基础SQL语句Day3(2026年)
数据库·后端·sql·mysql·oracle
XS03010611 小时前
MyBatis动态SQL
数据库·sql·mybatis