当前位置: 首页 > 后端技术 > Node.js

Node连接MySQL并封装其CRUD_0

时间:2023-04-03 13:46:54 Node.js

Node连接mysql本篇笔记将介绍node与mysql的连接,并分享打包后的代码,可直接在项目中使用。安装mysql模块npminstallmysqlconnectmysqlconstmysql=require('mysql');letconnection=mysql.createConnection({host:'localhost',user:'root',password:'password',database:'test'});connection.connect(function(err){if(err){console.error('连接失败:'+err.stack);return;}console.log('连接成功id'+connection.threadId);});host:连接的服务器user:数据库用户名password:设置的MySQL密码database:要连接的数据库名称常用的SQL语句,这里不再详述,包括select、insert、update、delete等语句.节点运行Mysql查询connection.query('SELECT*FROMt_userWHEREusername="whg"',(err,results,fields)=>{if(err){console.log(err);}console.log(results);})添加connection.query('INSERTINTOt_user(username,pass)VALUES(?,?)',['whg','123'],(err,results)=>{if(err){console.日志(错误);}console.log(结果);})deleteconnection.query('DELETEFROMt_userWHEREid=1',(错误,结果)=>{if(错误){console.log(错误);}console.log(results);})updateconnection.query('UPDATEt_userSETpass="321"WHEREusername="whg"',(err,results)=>{if(err){console.log(err);}console.log(results);})结束连接connection.end(function(err){});connection.destroy();两个都可以,第二个是强制结束。封装封装代码1.数据库配置文件//配置链接数据库参数module.exports={host:'localhost',port:3306,//端口号database:'nodetest',//数据库名user:'root',//数据库用户名密码:'123456'//数据库密码};2.封装和暴露方式letmysql=require('mysql');//导入mysql模块vardatabaseConfig=require('./mysql.config');//在数据库配置模块中引入数据//Expose方法module.exports={query:function(sql,params,callback){//每次使用都需要创建一个链接,用完数据后关闭操作完成Connectionvarconnection=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;}});});});}};3。Demo例子vardb=require('../model/mysql.js');//查询实例db.query('select*fromt_user',[],function(result,fields){console.log('query结果:');console.log(result);});//添加一个实例varaddSql='INSERTINTOwebsites(username,password)VALUES(?,?)';varaddSqlParams=['咕噜先森','666'];db.query(addSql,addSqlParams,function(result,fields){console.log('addsuccessful')})等你用完了,复制封装好的方法到项目并修改示例。下一篇我会继续介绍node+mysql连接池的使用。