这篇文章主要介绍了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();
});