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语句---添加连接。query('INSERTINTOinfo_user(user_name,project_id,role_flag,graph_info)VALUES(?,?,?,?)',['jiushugao','1','1','{}'],(err,结果)=>{if(err){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地址port:3306,//端口号database:'das',//数据库名user:'root',//数据库用户名password:'password'//数据库密码}mysqlOperation.jsletmysql=require('mysql')//导入mysql模块vardatabaseConfig=require('./mysql.config')//模块中导入数据库配置数据//对外暴露方式module.exports={query:functionn(sql,params,callback){//每次使用都需要创建链接,数据操作完成后关闭连接varconnection=mysql.createConnection(databaseConfig);connection.connect(function(err){if(err){console.log('数据库连接失败')throwerr}//开始数据操作//传入三个参数,第一个参数是sql语句,第二个参数是sql语句中需要的数据,第三个参数是callbackFunctionconnection.query(sql,params,function(err,results,fields){if(err){console.log('数据操作失败')throwerr}//返回查询到的数据给回调函数callback&&callback(results,fields)//results是数据操作的结果,fields是数据库连接的一些字段//停止链接数据库,必须查询语句再次,否则,一旦调用此方法,将直接停止连接,数据操作将是Failconnection.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('queryresult:')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('添加成功')})
