Node如何后台数据库使用增删改查功能


Posted in Javascript onNovember 21, 2019

 这篇文章主要介绍了Node如何后台数据库使用增删改查功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

无论node还是java增删改查都是一样的原理,变得是配合框架使用时候有简便方法而已。

优化:为了维护方便这里我们把sql语句提出来放在一个对象里面,只有要改变的参数放在请求接口的router里面

首先在routes文件夹里面创建userSql.js,在里面创建一个对象,再导出

var SQL = {
  inset:{// 增
    actorIn:'INSERT INTO actor(first_name,last_name) VALUES(?,?)' // actor是数据库的表名 first_name,last_name是其中的两个字段名,id一般设为自增
  },
  delete:{// 删
    actorDel:'DELETE FROM actor where actor_id = ?' // 一般唯一标识是id并且自增,我改为了actor_id(最好不要变)
  },
  change:{// 改
    actorCh:'UPDATE actor SET first_name=?,last_name=? WHERE actor_id=?' //修改唯一标识actor_id为几的first_name和last_name值
  },
  check:{// 查
    actorCk:'SELECT * FROM actor', //查询所有使用*,actor是表名
    actorId:'SELECT * FROM actor WHERE actor_id=?', //查询唯一标识actor_id=x的所有字段
    actorAll:'SELECT first_name FROM actor', //查询actor表里面的所有first_name字段
    actorId:'SELECT first_name FROM actor WHERE actor_id=?' //查询唯一标识actor_id=x的所有first_name字段
  }
}
module.exports = SQL;

然后我们在user.js里面导入

var userSql = require('./userSql.js')

一、增

在user.js里面我们创建一个添加的router。

router.post('/add', function(req, res, next) {
 var addValue = ['kk','MM']//参数是对应first_name,last_name的值,前端调用接口post方法是使用req.body.xx获取的参数<br>// query()第一个是语句,第二个是参数
 mysql.query(userSql.inset.actorIn,addValue, function (error, results) { // 增
  if (error) throw error;
  res.json({
   code:0,
   data:'成功'
  })
 });
 mysql.end();//关闭mysql连接
});

二、删

在user.js里面我们创建一个删除的router

router.post('/del', function(req, res, next) {
 var delValue = 4 // 这里是删除的行唯一标识,一般是id,这里改为了actor_id
 mysql.query(userSql.delete.actorDel,delValue, function (error, results) { // 删
  if (error) throw error;
  res.json({
   code:0,
   data:'成功'
  })
 });
 mysql.end();
});

三、改

在user.js里面我们创建一个修改的router

router.post('/change', function(req, res, next) {
 var addValue = ['aa','22',3] // 前两个对应first_name,last_name,actor_id=3
 mysql.query(userSql.change.actorCh,addValue, function (error, results) { // 改
  if (error) throw error;
  res.json({
   code:0,
   data:'成功'
  })
 });
 mysql.end();
});

四、查

在user.js里面我们创建一个查询的router

router.get('/check', function(req, res, next) {
 //查询一般使用get方法,获取前端传来参数使用req.query.xx
 mysql.query(userSql.check.actorCk,1, function (error, results, fields) { // 查
  if (error) throw error;
  res.json({
   code:0,
   data:results
  })
 });
 mysql.end();
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
如何快速的呈现我们的网页的技巧整理
Jul 01 Javascript
浅谈关于JavaScript的语言特性分析
Apr 11 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
Oct 24 Javascript
jquery获取元素索引值index()示例
Feb 13 Javascript
chrome下img加载对height()的影响示例探讨
May 26 Javascript
JavaScript实现信用卡校验方法
Apr 07 Javascript
jquery实现图片上传之前预览的方法
Jul 11 Javascript
让图片跳跃起来  javascript图片轮播特效
Feb 16 Javascript
js实现加载页面就自动触发超链接的示例
Aug 31 Javascript
JavaScript继承与多继承实例分析
May 26 Javascript
angular将html代码输出为内容的实例
Sep 30 Javascript
JavaScript实现小球沿正弦曲线运动
Sep 07 Javascript
vue移动端使用appClound拉起支付宝支付的实现方法
Nov 21 #Javascript
微信小程序动态设置图片大小的方法
Nov 21 #Javascript
通过原生vue添加滚动加载更多功能
Nov 21 #Javascript
小程序api实现promise封装过程解析
Nov 21 #Javascript
如何基于原生javaScript生成带图片的二维码
Nov 21 #Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
Nov 21 #Javascript
vue element 中的table动态渲染实现(动态表头)
Nov 21 #Javascript
You might like
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
JS target与currentTarget区别说明
2011/08/28 Javascript
js模仿windows桌面图标排列算法具体实现(附图)
2013/06/16 Javascript
JS阻止冒泡事件以及默认事件发生的简单方法
2014/01/17 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
2014/08/13 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
javascript复制粘贴与clipboardData的使用
2014/10/16 Javascript
jQuery标签编辑插件Tagit使用指南
2015/04/21 Javascript
js中日期的加减法
2015/05/06 Javascript
javascript定义类和类的实现实例详解
2015/12/01 Javascript
JavaScript中利用jQuery绑定事件的几种方式小结
2016/03/06 Javascript
基于Bootstrap实现tab标签切换效果
2020/04/15 Javascript
AngularJS 使用ng-repeat报错 [ngRepeat:dupes]
2017/01/19 Javascript
Node.js如何实现注册邮箱激活功能 (常见)
2017/07/23 Javascript
JS实现模糊查询带下拉匹配效果
2018/06/21 Javascript
在vue中更换字体,本地存储字体非引用在线字体库的方法
2018/09/28 Javascript
react-native聊天室|RN版聊天App仿微信实例|RN仿微信界面
2019/11/12 Javascript
详解vue修改elementUI的分页组件视图没更新问题
2020/11/13 Javascript
[07:54]DOTA2-DPC中国联赛 正赛 iG vs VG 选手采访
2021/03/11 DOTA
python使用clear方法清除字典内全部数据实例
2015/07/11 Python
Python 递归函数详解及实例
2016/12/27 Python
Python3 实现随机生成一组不重复数并按行写入文件
2018/04/09 Python
python基于http下载视频或音频
2018/06/20 Python
python入门:这篇文章带你直接学会python
2018/09/14 Python
在Pycharm中执行scrapy命令的方法
2019/01/16 Python
python标记语句块使用方法总结
2019/08/05 Python
wxPython电子表格功能wx.grid实例教程
2019/11/19 Python
Pytorch实现神经网络的分类方式
2020/01/08 Python
pycharm实现print输出保存到txt文件
2020/06/01 Python
10分钟理解CSS3 Grid布局
2018/12/20 HTML / CSS
北美Newegg打造的全球尖货海购平台:tt海购
2018/09/28 全球购物
STAUD官方网站:洛杉矶独有的闲适风格
2019/04/11 全球购物
介绍下static、final、abstract区别
2015/01/30 面试题
聚会通知怎么写
2015/04/23 职场文书
关于分班的感言
2015/08/04 职场文书
励志语录:只有自己足够强大,才能不被别人践踏
2020/01/09 职场文书