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