问题描述
对于一个前端开发人员来说,学习node可能没什么难度,单独的来学习 mysql,可能也没有什么难度,但是使用 nodejs对 mysql数据库,进行操作,可能对于初学者是一大挑战。
如果你确实要学习node是如何操作数据库的,最起码,你需要知道一些基本的东西:nodejs、mysql。
其中,nodejs你最好知道一些基本的模块——Stream流、Buffer对象、fs文件系统、模块系统、以及一个框架express。或者koa框架也行。又或者是阿里的egg框架。当然对于初学者而言,express也许更好一点。
至于mysql,个人觉得只需要一些基本的命令知道就行了,你需要知道mysql如何安装在电脑中,如何启动mysql,基本的建表、查表的命令知道就行了。
node中的mysql模块
node中的mysql模块,就是给你进行数据库操作的核心模块。
基本使用:
//下载
npm install --save mysql
第二步:数据库连接
/**
* 数据库链接部分
*/
const mysql = require('mysql');
const connection = mysql.createConnection({
host:'localhost',
user:'root',
password:'woainia123',
database:'node'
})
connection.connect(function(){
console.log('链接成功')
});
增删改查的示例介绍
1、查询
connection.query('select id, title, author, data from book',function(error, results, fields){
if (error) throw error;
console.log('The solution is: ', results);
})
这个语句的意思就是,从book这个表中查询出来它的id、title、author等数据信息。
2、数据插入
const addSql = 'insert into book(title, author, data ) values (?, ?, ?)';
connection.query(addSql,addSqlParams,function(err, result){
if(err){
console.log('[INSERT ERROR] -',err.message);
return;
}
console.log('数据插入:', result)
})
3、数据更新update
//update
var modSql = 'update book set author = ? where id = ?';
var modSqlParams = ['李武帝', 3];
connection.query(modSql,modSqlParams, function(err, result){
if(err){
console.log('update error',err.message);
return;
}
console.log('UPDATE affectedRows',result.affectedRows);
})
4、数据删除
connection.query(delSql, delSqlParams, function (err, result) {
if(err){
console.log('[DELETE ERROR] - ',err.message);
return;
}
console.log('--------------------------DELETE----------------------------');
console.log('DELETE affectedRows',result.affectedRows);
console.log('-----------------------------------------------------------------\n\n');
});