nodejs如何添加和查询数据库的数据

nodejs如何添加和查询数据库的数据?下面本篇文章带大家了解一下基于node.js实现数据库中数据添加和查询功能的方法,希望对大家有所帮助!

基于node.js实现数据库中的添加和查询

思路

  • 创建项目 serverAPI

  • 初始化项目文件夹

npm init --y
  • 安装包
npm i express mysql
  • restfulf 风格

  • 使用Postman软件测试

【推荐学习:《nodejs 教程》】

项目结构图

0.png

实现

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数据库

22.jpg

  • postman测试

33.jpg

  • 控制台输出结果

2021-09-17_13-41-39.jpg

使用路由中间件优化方案

思路

  • 创建项目

  • 初始化项目文件夹

npm init --y
  • 安装包
npm i express mysql
  • restfulf 风格

  • 使用Postman软件测试

项目结构图

2021-09-17_13-46-14.jpg

实现

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

作者:不怂

更多编程相关知识,请访问:编程视频!!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


kindeditor4.x代码高亮功能默认使用的是prettify插件,prettify是Google提供的一款源代码语法高亮着色器,它提供一种简单的形式来着色HTML页面上的程序代码,实现方式如下: 首先在编辑器里面插入javascript代码: 确定后会在编辑器插入这样的代码: <pre
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代码高亮,因为SyntaxHighlighter的应用非常广泛,所以将kindeditor默认的prettify替换为SyntaxHighlighter代码高亮插件 上一篇“让kindeditor显示高亮代码”中已经
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小
JS怎么获取当前时间戳
JS如何判断对象是否为数组
JS怎么获取图片当前宽高
JS对象如何转为json格式字符串
JS怎么获取图片原始宽高
怎么在click事件中调用多个js函数
js如何往数组中添加新元素
js如何拆分字符串
JS怎么对数组内元素进行求和
JS如何判断屏幕大小
js怎么解析json数据
js如何实时获取浏览器窗口大小
原生JS实现别踩白块小游戏(五)
原生JS实现别踩白块小游戏(一)