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 相关文章推荐
基于jQuery的history历史记录插件
Dec 11 Javascript
js判断undefined变量类型使用typeof
Jun 03 Javascript
jquery 合并内容相同的单元格(示例代码)
Dec 13 Javascript
在HTML代码中使用JavaScript代码的例子
Oct 16 Javascript
详解Vue用自定义指令完成一个下拉菜单(select组件)
Oct 31 Javascript
JS数组实现分类统计实例代码
Sep 30 Javascript
实例讲解JavaScript预编译流程
Jan 24 Javascript
如何进行微信公众号开发的本地调试的方法
Jun 16 Javascript
JavaScript变量Dom对象的所有属性
Apr 30 Javascript
JS 设计模式之:工厂模式定义与实现方法浅析
May 06 Javascript
vue添加锚点,实现滚动页面时锚点添加相应的class操作
Aug 10 Javascript
解决vue数据不实时更新的问题(数据更改了,但数据不实时更新)
Oct 27 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实现数组的笛卡尔积运算示例
2017/12/15 PHP
javascript 读取XML数据,在页面中展现、编辑、保存的实现
2009/10/27 Javascript
js getBoundingClientRect() 来获取页面元素的位置
2010/11/25 Javascript
Jqyery中同等与js中windows.onload的应用
2011/05/10 Javascript
jQuery 借助插件Lavalamp实现导航条动态美化效果
2013/09/27 Javascript
jQuery.holdReady()方法用法实例
2014/12/27 Javascript
AngularJS中的API(接口)简单实现
2016/07/28 Javascript
AngularJS 模块化详解及实例代码
2016/09/14 Javascript
javascript数据结构中栈的应用之符号平衡问题
2017/04/11 Javascript
原生JS实现的多个彩色小球跟随鼠标移动动画效果示例
2018/02/01 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
微信小程序添加插屏广告并设置显示频率(一天一次)
2019/12/06 Javascript
js删除指定位置超链接中含有百度与360的标题
2021/01/06 Javascript
[01:43]深扒TI7聊天轮盘语音出处4
2017/05/11 DOTA
Python使用gensim计算文档相似性
2016/04/10 Python
python 计算文件的md5值实例
2017/01/13 Python
python3.5 email实现发送邮件功能
2018/05/22 Python
Python 微信爬虫完整实例【单线程与多线程】
2019/07/06 Python
详解PyTorch手写数字识别(MNIST数据集)
2019/08/16 Python
利用python计算时间差(返回天数)
2019/09/07 Python
python实现回旋矩阵方式(旋转矩阵)
2019/12/04 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
2020/04/22 Python
windows下的pycharm安装及其设置中文菜单
2020/04/23 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
2021/01/13 Python
怎样实现H5+CSS3手指滑动切换图片的示例代码
2019/05/05 HTML / CSS
Oroton中国官网:澳洲知名奢侈配饰品牌
2017/03/26 全球购物
国家地理在线商店:Shop National Geographic
2018/06/30 全球购物
设置器与访问器的定义以及各自特点
2016/01/08 面试题
初中政治教学反思
2014/01/17 职场文书
本科毕业生求职自荐信
2014/02/03 职场文书
办公室打字员岗位职责
2014/04/16 职场文书
铁路安全事故反思
2014/04/26 职场文书
中学教师暑期培训方案
2014/08/27 职场文书
群众路线剖析材料(四风)
2014/11/05 职场文书
中国世界遗产导游词
2015/02/13 职场文书
解决Django transaction进行事务管理踩过的坑
2021/04/24 Python