node 后台使用增删改查(4)
无论node还是java增删改查都是一样的原理,变得是配合框架使用时候有简便方法而已。
这里我接着上一篇开始讲,使用同一个数据库(数据库创建)这里必须创建了数据库
优化:为了维护方便这里我们把sql语句提出来放在一个对象里面,只有要改变的参数放在请求接口的router里面
首先在routes文件夹里面创建userSql.js,在里面创建一个对象,再导出
var SQL = {
inset:{// 增
actorIn:'INSERT INTO company(first_name,last_name) VALUES(?,?)' // company是数据库的表名 first_name,last_name是其中的两个字段名,id一般设为自增
},
delete:{// 删
actorDel:'DELETE FROM company where id = ?' // 一般唯一标识是id并且自增
},
change:{// 改
actorCh:'UPDATE company SET first_name=?,last_name=? WHERE id=?' //修改唯一标识id为几的first_name和last_name值
},
check:{// 查
actorCk:'SELECT * FROM company', //查询所有使用*,company是表名
actorId:'SELECT * FROM company WHERE id=?', //查询唯一标识id=x的所有字段
actorAll:'SELECT first_name FROM company', //查询company表里面的所有first_name字段
actorId:'SELECT first_name FROM company WHERE id=?' //查询唯一标识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获取的参数
// query()第一个是语句,第二个是参数
mysql.query(userSql.inset.actorIn,addValue, function (error, results) { // 增
if (error) throw error;
res.json({
code:0,
data:'成功'
})
});
mysql.end();//关闭mysql连接 上篇文章中把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();
});
node 后台使用增删改查(4)的更多相关文章
- 自封装node 的简单增删改查
1 首先引入的上篇node 链接mysql 里面的js var connect = require('./nodemysql.js'); 2 定义常量 const customerSQL = { qu ...
- Flask项目实战:创建电影网站(3)后台的增删改查
添加预告 根据需求数据库创建表格 需求数据库,关键字title logo # 上映预告 class Preview(db.Model): __tablename__ = "preview&q ...
- Node.js + MySQL 实现数据的增删改查
通过完成一个 todo 应用展示 Node.js + MySQL 增删改查的功能.这里后台使用 Koa 及其相应的一些中间件作为 server 提供服务. 初始化项目 $ mkdir node-cru ...
- koa+mysql实现增删改查-全栈之路(001)
Date: 2020-4-23 以前很少写文章,从今天开始我要挑战一下自己,连续输出100篇技术类文章.这100篇文章我尽量以实战案例为主. 如果你觉得本文还不错,记得关注或者给个 star,你们的赞 ...
- 可编辑树Ztree的使用(包括对后台数据库的增删改查)
找了很多网上关于Ztree的例子和代码才搞定. 首先,关于Ztree的代码不介绍了,网上下载之后,引用下列四个文件就能使用了. 1.关于配置选项.主要通过回调函数来实现向后台发送数据,实现增删改查. ...
- [译]聊聊C#中的泛型的使用(新手勿入) Seaching TreeVIew WPF 可编辑树Ztree的使用(包括对后台数据库的增删改查) 字段和属性的区别 C# 遍历Dictionary并修改其中的Value 学习笔记——异步 程序员常说的「哈希表」是个什么鬼?
[译]聊聊C#中的泛型的使用(新手勿入) 写在前面 今天忙里偷闲在浏览外文的时候看到一篇讲C#中泛型的使用的文章,因此加上本人的理解以及四级没过的英语水平斗胆给大伙进行了翻译,当然在翻译的过程中发 ...
- nodejs+easyui(抽奖活动后台)增删改查
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfAAAAJACAIAAAD97KNZAAAgAElEQVR4nO2daXxb5Z2o7w+dO1/ufL ...
- Node.js、express、mongodb 入门(基于easyui datagrid增删改查)
前言 从在本机(win8.1)环境安装相关环境到做完这个demo大概不到两周时间,刚开始只是在本机安装环境并没有敲个Demo,从周末开始断断续续的想写一个,按照惯性思维就写一个增删改查吧,一方面是体验 ...
- Node+Express+node-mysql 实战于演习 全套mysql(增删改查)
最近这段时间研究Node感觉不错,自己做了一个增删改查,虽然有些简陋,但是思想是想通的,其实所有项目都是增删改查,有助于初学者快速掌握Node 首先 本实例展示的是基于Node+Express+nod ...
随机推荐
- django-模板之for empty(十一)
当值为空时,会调用empty下面的值
- django-模板之自动转义autoescape(八)
index.html {{QQ}} views.py def index(request): context={ 'QQ':'<a href="http://www.qq.com&qu ...
- python *args,**kwargs参数
实际上,关键的是*和** 我们以三个例子来解释: 普通的使用参数: def test1(arg): print(arg) test1("a") 输出: a *是将剩下的参数用元祖表 ...
- windows一键还原,阴影卷创建报错,shadowcopy error - User Imposed Limit
windows 系统自带的还原备份功能,底层使用 shadowcopy(阴影卷)技术. 该技术采用了 copy on write 的方式, 当每次有新 IO 时,老的数据会被拷贝出来,然后再写新的 I ...
- VMware问题--无法获得 VMCI 驱动程序的版本: 句柄无效
关于VMware问题:无法获得 VMCI 驱动程序的版本: 句柄无效.驱动程序“vmci.sys”的版本不正确 问题截图: 解决 1.根据配置文件路径找到对应的.vmx文件: 2.用编辑器打开,找到v ...
- 就因为加了Lombok的@Accessors(chain = true),bean拷贝工具类不干活了
前言 这次新建了一个工程,因为 Lombok 用得很习惯,但以前的话,一般只用了@Data,@AllArgsConstructor,@EqualsAndHashCode等常规注解:那这个Accesso ...
- 使用Magicodes.SwaggerUI快速配置SwaggerUI以及设置API分组
Magicodes.SwaggerUI 快速配置和集成SwaggerUI 特点 通过配置文件简单配置即可完成SwaggerUI的API格式JSON生成和集成 支持API分组和隐藏 支持自定义页面和验证 ...
- wfi破解
破解wifi步骤 1.准备字典(常见字典 数字组合.常用姓氏.汉字姓名+年份组合等等) 2.无线网卡 3.查看附近WiFi信息 前言 : 随着无线网络走进我们的生活,在方便了我们的同时又产生了许多的安 ...
- 转:PHP删除目录及目录下所有文件
PHP删除目录及目录下所有文件 <?php //循环删除目录和文件函数 function delDirAndFile( $dirName ) { if ( $handle = opendir( ...
- [考试反思]0814NOIP模拟测试21
前两名是外校的240.220.kx和skyh拿到了190的[暴力打满]的好成绩. 我第5是170分,然而160分就是第19了. 在前一晚上刚刚爆炸完毕后,心态格外平稳. 想想前一天晚上的挣扎: 啊啊啊 ...