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 相关文章推荐
禁止iframe脚本弹出的窗口覆盖了父窗口的方法
Sep 06 Javascript
node.js中的buffer.Buffer.isBuffer方法使用说明
Dec 14 Javascript
javascript特殊日历控件分享
Mar 07 Javascript
jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果
Aug 15 Javascript
JS设置CSS样式的方式汇总
Jan 21 Javascript
vue实现添加与删除图书功能
Oct 07 Javascript
在 Vue.js中优雅地使用全局事件的方法
Feb 01 Javascript
node.js实现微信开发之获取用户授权
Mar 18 Javascript
解决使用layui的时候form表单中的select等不能渲染的问题
Sep 18 Javascript
Vue替代marquee标签超出宽度文字横向滚动效果
Dec 09 Javascript
vue3.0自定义指令(drectives)知识点总结
Dec 27 Vue.js
vue element el-transfer增加拖拽功能
Jan 15 Vue.js
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
晶体管来复再生式二管收音机
2021/03/02 无线电
php+javascript的日历控件
2009/11/19 PHP
PHP提示Notice: Undefined variable的解决办法
2012/11/24 PHP
php环境套包 dedeampz 伪静态设置示例
2014/03/26 PHP
php输入数据统一类实例
2015/02/23 PHP
php动态添加url查询参数的方法
2015/04/14 PHP
php中序列化与反序列化详解
2017/02/13 PHP
jquery 多行文本框(textarea)高度变化
2013/07/03 Javascript
js使浏览器窗口最大化实现代码(适用于IE)
2013/08/07 Javascript
FireBug 调试JS入门教程 如何调试JS
2013/12/23 Javascript
探究JavaScript函数式编程的乐趣
2015/12/14 Javascript
JavaScript实现瀑布流以及加载效果
2017/02/11 Javascript
使用requirejs模块化开发多页面一个入口js的使用方式
2017/06/14 Javascript
JavaScript函数绑定用法实例分析
2017/11/14 Javascript
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
2018/08/24 Javascript
详解微信小程序获取当前时间及日期的方法
2019/04/28 Javascript
vue按需加载实例详解
2019/09/06 Javascript
前端使用crypto.js进行加密的函数代码
2020/08/16 Javascript
[01:33:14]LGD vs VP Supermajor 败者组决赛 BO3 第二场 6.10
2018/07/04 DOTA
Python自动化测试ConfigParser模块读写配置文件
2016/08/15 Python
Python竟能画这么漂亮的花,帅呆了(代码分享)
2017/11/15 Python
pyhton列表转换为数组的实例
2018/04/04 Python
python pygame模块编写飞机大战
2018/11/20 Python
pandas删除行删除列增加行增加列的实现
2019/07/06 Python
Python 一键获取百度网盘提取码的方法
2019/08/01 Python
详解Python打包分发工具setuptools
2019/08/05 Python
基于Python3.7.1无法导入Numpy的解决方式
2020/03/09 Python
TensorFlow tf.nn.conv2d_transpose是怎样实现反卷积的
2020/04/20 Python
python如何编写win程序
2020/06/08 Python
Python 如何测试文件是否存在
2020/07/31 Python
paramiko使用tail实时获取服务器的日志输出详解
2020/12/06 Python
VisionPros美国站:加拿大在线隐形眼镜和眼镜零售商
2020/02/11 全球购物
入团者的自我评价分享
2013/12/02 职场文书
学生手册评语
2014/05/05 职场文书
要账委托书范本
2014/09/15 职场文书
2015年化妆品销售工作总结
2015/05/11 职场文书