1、节点端操作数据库。mysql中的connect配置需要换成自己的连接数据库varmysql=require('mysql')//调用MySQL模块需要安装mysql模块$npminstallmysql//创建连接varconnection=mysql.createConnection({host:'',//hostuser:'root',//MySQL认证用户名password:'password',//MySQL认证用户密码port:'3306',//端口号database:''//数据库名称})//创建连接connection.connect(function(err){if(err){console.log('[query]-:'+err)return}console.log('[connectionconnect]succeed!')})/***以info_user表为例*///执行SQL语句---查询connection.query('SELECT*FROMinfo_userWHEREuser_name="project_admin_2"',function(err,results,fields){if(err){console.log('[SELECT]-:'+err)return}console.log('解决方案是:',results)})//执行SQL---添加connection.query('INSERTINTOinfo_user(user_name,project_id,role_flag,graph_info)VALUES(?,?,?,?)',['jiushugao','1','1','{}'],(err,results)=>{如果(错误){console.log('[INSERT]-:'+err)}console.log(results)})//执行SQL语句---deleteconnection.query('DELETEFROMinfo_userWHEREuser_name="jiushugao"',(err,results)=>{if(err){console.log('[DELETE]-:'+err)}console.log(results)})//执行SQL语句---updateconnection.query('UPDATEinfo_userSETrole_flag="2"WHEREuser_name="jiushugao"',(err,results)=>{if(err){console.log('[UPDATE]-:'+err)}console.log(results)})//关闭连接connection.end(function(err){if(err){return;}console.log('[connectionend]succeed!')})可以封装起来使用,效果更好。下面是三个文件mysql.config。js//配置链接数据库参数//数据库参数使用自己的module.exports={host:'localhost',//ip地址,本地默认localhostport:3306,//端口号database:'',//数据库nameuser:'root',//数据库用户名password:'password'//数据库密码}mysqlOperation.jsletmysql=require('mysql')//导入mysql模块vardatabaseConfig=require('./mysql.config')//在数据库配置模块中引入数据//暴露方法module.exports={query:function(sql,params,callback){//每次使用都需要创建链接,数据操作完成后关闭连接varconnection=mysql.createConnection(databaseConfig);connection.connect(function(err){if(err){console.log('数据库连接失败')throwerr}//开始数据操作//传入三个参数,第一个参数是sql语句,第二个参数是sql语句中需要的数据,第三个是参数回调函数connection.query(sql,params,function(err,results,fields){if(err){console.log('数据操作失败')throwerr}//返回查询到的数据给回调函数callback&&callback(results,fields)//results是数据操作的结果,fields是数据库连接的一些字段//停止连接数据库,必须重新查询语句,否则一旦调用该方法,连接将直接停止,数据操作将失败connection.end(function(err){if(err){console.log('关闭数据库连接失败!')throwerr}})})})}}完成以上配置后,就可以执行demo了。jsvardb=require('../mysql/mysqlOperation')//查询实例varselectSql='SELECT*FROMinfo_userWHEREuser_name="project_admin_2"'db.query(selectSql,[],function(result,fields){console.log('查询结果:')console.log(result)})//添加实例varaddSql='INSERTINTOinfo_user(user_name,project_id,role_flag,graph_info)VALUES(?,?,?,?)'varaddSqlParams=['jiushugao','1','1','{}']db.query(addSql,addSqlParams,function(result,fields){console.log('添加成功')})
