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 相关文章推荐
Extjs学习笔记之一 初识Extjs之MessageBox
Jan 07 Javascript
jQuery实现列表自动滚动循环滚动展示新闻
Aug 22 Javascript
原生js仿jq判断当前浏览器是否为ie,精确到ie6~8
Aug 30 Javascript
通用javascript代码判断版本号是否在版本范围之间
Nov 29 Javascript
jQuery toggle 代替方法
Mar 22 Javascript
vue 挂载路由到头部导航的方法
Nov 13 Javascript
解决前后端分离 vue+springboot 跨域 session+cookie失效问题
May 13 Javascript
微信小程序开发中var that =this的用法详解
Jan 18 Javascript
JavaScript实现拖动对话框效果的实现代码
Oct 12 Javascript
jQuery实现简单评论区功能
Oct 26 jQuery
微信小程序自定义tabBar的踩坑实践记录
Nov 06 Javascript
JavaScript实现复选框全选功能
Apr 11 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
对比分析php中Cookie与Session的异同
2016/02/19 PHP
Zend Framework实现留言本分页功能(附demo源码下载)
2016/03/22 PHP
基于PHP实现数据分页显示功能
2016/05/26 PHP
浅谈php fopen下载远程文件的函数
2016/11/18 PHP
PHP文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤解析
2017/01/12 PHP
js的with语句使用方法
2007/09/21 Javascript
JavaScript 事件参考手册
2008/12/24 Javascript
不使用中间变量,交换int型的 a, b两个变量的值。
2010/10/29 Javascript
jQuery extend 的简单实例
2013/09/18 Javascript
jQuery封装的获取Url中的Get参数示例
2013/11/26 Javascript
js的image onload事件使用遇到的问题
2014/07/15 Javascript
jQuery实现仿新浪微博浮动的消息提示框(可智能定位)
2015/10/10 Javascript
浅谈js里面的InttoStr和StrtoInt
2016/06/14 Javascript
JS生成不重复的随机数组的简单实例
2016/07/10 Javascript
解析vue中的$mount
2017/12/21 Javascript
微信小程序排坑指南详解
2018/05/23 Javascript
vue component 中引入less文件报错 Module build failed
2019/04/17 Javascript
Vue keepAlive 数据缓存工具实现返回上一个页面浏览的位置
2019/05/10 Javascript
jQuery+Ajax+js实现请求json格式数据并渲染到html页面操作示例
2020/06/02 jQuery
Python的面向对象思想分析
2015/01/14 Python
Python中利用sqrt()方法进行平方根计算的教程
2015/05/15 Python
基于Django的ModelForm组件(详解)
2017/12/07 Python
高效使用Python字典的清单
2018/04/04 Python
python3 实现一行输入,空格隔开的示例
2018/11/14 Python
基于Keras中Conv1D和Conv2D的区别说明
2020/06/19 Python
Python Merge函数原理及用法解析
2020/09/16 Python
css3 pointer-events 介绍详解
2017/09/18 HTML / CSS
英国剑桥包官网:The Cambridge Satchel Company
2016/08/01 全球购物
Kathmandu新西兰官网:新西兰户外运动品牌
2019/07/27 全球购物
经典c++面试题四
2015/05/14 面试题
EJB的角色和三个对象
2015/12/31 面试题
售前工程师职业生涯规划
2014/03/02 职场文书
学校领导干部民主生活会整改方案
2014/09/29 职场文书
新党章的学习心得体会
2014/11/07 职场文书
离婚财产分割协议书
2015/08/11 职场文书
基于Python实现股票收益率分析
2022/04/02 Python