nodejs如何添加和查询数据库的数据?下面本篇文章带大家了解一下基于node.js实现数据库中数据添加和查询功能的方法,希望对大家有所帮助!
基于node.js实现数据库中的添加和查询
思路
创建项目 serverAPI
初始化项目文件夹
npm init --y
- 安装包
npm i express mysql
restfulf 风格
使用Postman软件测试
【推荐学习:《nodejs 教程》】
项目结构图
实现
sql.js
文件代码如下:
// 1. 加载msyql var mysql = require('mysql'); // 2. 创建连接 var connection = mysql.createConnection({ host : 'localhost', // 你要连接的数据库服务器的地址 port : 3306,// 端口号 user : 'root', // 连接数据库服务器需要的用户名 password : 'root', // 连接数据库服务器需要的密码 database : 'yanyan' //你要连接的数据库的名字 }); // 3. 连接数据库 connection.connect((err) => { // 如果有错误对象,表示连接失败 if (err) return console.log('数据库连接失败') // 没有错误对象提示连接成功 console.log('mysql数据库连接成功') }); module.exports = connection
server.js
文件 参考代码
const express = require("express"); const app = express(); const connection = require("./utils/sql"); app.use(express.urlencoded()); // 添加数据接口 app.post("/api/student", (req, res) => { console.log(req.body); // 接收普通键值对参数 const { name, sex, age } = req.body; // 添加到数据库中 const sql = `insert into Students(name,sex,age) value('${name}','${sex}',${age})`; //console.log("要执行的sql", sql); // result 接受的数据 connection.query(sql, (err, result) => { if (err) { console.log(err); res.json({ msg: "添加失败", code: 0 }); } else { console.log(result); res.json({ msg: "添加成功", code: 1 }); } }); }); // 获取数据接口 app.get("/api/student", (req, res) => { const sql = `select * from Students `; connection.query(sql, (err, result) => { if (err) { console.log(err); res.json({ msg: "获取失败", code: 0 }); } else { console.log(result); res.json({ msg: "获取成功", code: 0, data: result }); } }); }); app.listen(3000, () => { console.log("接口服务器启动,端口号为3000"); });
运行结果
- sql数据库
- postman测试
- 控制台输出结果
使用路由中间件优化方案
思路
创建项目
初始化项目文件夹
npm init --y
- 安装包
npm i express mysql
restfulf 风格
使用Postman软件测试
项目结构图
实现
sql.js
文件
// 1. 加载mysql var mysql = require("./node_modules/mysql"); // 2. 创建连接 var connection = mysql.createConnection({ host: "localhost", // 你要连接的数据库服务器的地址 port: 3306, // 端口号 user: "root", // 连接数据库服务器需要的用户名 password: "root", // 连接数据库服务器需要的密码 database: "yanyan", //你要连接的数据库的名字 }); // 3. 连接数据库 connection.connect((err) => { // 如果有错误对象,表示连接失败 if (err) return console.log("数据库连接失败"); // 没有错误对象提示连接成功 console.log("mysql数据库连接成功"); }); module.exports = connection;
get.js
文件
const connection = require("./sql"); const express = require("./node_modules/express"); const router = express.Router(); router.use(express.urlencoded()); //获取数据接口 router.get("/api/student", (req, res) => { const sql = `select * from Students`; connection.query(sql, (err, result) => { if (err) { console.log(err); res.json({ msg: "获取失败", code: 0 }); } else { console.log(result); res.json({ msg: "获取成功", code: 0, data: result }); } }); }); module.exports = router;
post.js
文件
const connection = require("./sql"); const express = require("./node_modules/express"); const router = express.Router(); router.use(express.urlencoded()); // 添加数据接口 router.post("/api/student", (req, res) => { //console.log(req.body); // 接收普通键值对参数 const { name, sex, age } = req.body; // 添加到数据库中 const sql = `insert into Students(name,sex,age) values('${name}','${sex}',${age})`; //console.log("要执行的sql", sql); // result 接受的数据 connection.query(sql, (err, data) => { if (err) { console.log(err); res.json({ msg: "添加失败", code: 0 }); } else { console.log(data); res.json({ msg: "添加成功", code: 1 }); } }); }); module.exports = router;
server-pro.js
文件
const get = require("./utils/get"); const post = require("./utils/post"); const express = require("./node_modules/express"); const app = express(); app.use("/utils/get", get); app.use("/utils/post", post); app.listen(3000, () => { console.log("接口服务器启动,端口号为3000"); });
原文地址:https://juejin.cn/post/7008779311666692126
作者:不怂
更多编程相关知识,请访问:编程视频!!
以上是nodejs如何添加和查询数据库的数据的详细内容。更多信息请关注PHP中文网其他相关文章!

Vercel是什么?本篇文章带大家了解一下Vercel,并介绍一下在Vercel中部署 Node 服务的方法,希望对大家有所帮助!

gm是基于node.js的图片处理插件,它封装了图片处理工具GraphicsMagick(GM)和ImageMagick(IM),可使用spawn的方式调用。gm插件不是node默认安装的,需执行“npm install gm -S”进行安装才可使用。

大家都知道 Node.js 是单线程的,却不知它也提供了多进(线)程模块来加速处理一些特殊任务,本文便带领大家了解下 Node.js 的多进(线)程,希望对大家有所帮助!

今天跟大家介绍一个最新开源的 javaScript 运行时:Bun.js。比 Node.js 快三倍,新 JavaScript 运行时 Bun 火了!

node怎么爬取数据?下面本篇文章给大家分享一个node爬虫实例,聊聊利用node抓取小说章节的方法,希望对大家有所帮助!

在nodejs中,lts是长期支持的意思,是“Long Time Support”的缩写;Node有奇数版本和偶数版本两条发布流程线,当一个奇数版本发布后,最近的一个偶数版本会立即进入LTS维护计划,一直持续18个月,在之后会有12个月的延长维护期,lts期间可以支持“bug fix”变更。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Atom编辑器mac版下载
最流行的的开源编辑器

Dreamweaver Mac版
视觉化网页开发工具

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。