开篇寄语
前端方面已经深入学习和研究了一段时间了,接触到的Node.js也涉及到了数据库的知识,恰好也有这方面的需求,那么就写下这篇文章,以Node.js来操控数据库,并顺便把数据库Mysql的知识学会,伯衡君以w3schools上的教程条目一一学起,做此文章以总结,方便以后查看……
前提准备
- 安装Nodejs,前往Nodejs官网下载安装包,并安装到本机,加载mysql包
- 安装Mysql数据库到本机,同时建议安装MySQLWorkbench应用,并有一些数据库基础知识
内容详情
以上前提准备都已经做好后,就可以进行下一步骤啦,在此之前,先在本地数据库sys建立一个表格,伯衡君建立了一个名为tutorials_tbl的表格,同时新建了一些数据放进表格,如下图所示:
要想让Node.js链接数据库,而不出现‘NodeJS MySQL Client does not support authentication protocol’错误,请在MySQLWorkbench,输入以下两条命令分别执行即可:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your new password'; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your new password';
如下图所示:
图中的'your new password'是指的自定义密码,待会链接的时候会用到。
接下来,打开VScode(伯衡君用的是此编辑器,还有其他可以根据需要自行选择),在其中新建一个js文件, 之后输入以下代码:
var mysql = require('mysql'); var connection = mysql.createConnection({ host: 'localhost',//数据库安装在了本地就用这个啦 user: 'root', port: '3306', password: 'your password',//上一步设置的密码在此处用到了 }); connection.connect(); var addSql = 'INSERT INTO sys.tutorials_tbl(tutorial_id,tutorial_title,tutorial_author,submission_date) VALUES(?,?,?,?)'; var addSqlParams = [3, 'Google', 'Zhang Boheng', '2021-09-30']; connection.query(addSql, addSqlParams, function(err, result) { if (err) { console.log('[SELECT ERROR] - ', err.message); return; } console.log(result); }); connection.end();
运行脚本后,调试窗口,就会出现如下内容:
之后,到数据库就会看到有一条新数据增加了,如下图所示:
又比如想删除第三条数据,那么之前学的MySQL基础知识就用到了,在js文件中输入以下代码:
var mysql = require('mysql'); var connection = mysql.createConnection({ host: 'localhost', //数据库安装在了本地就用这个啦 user: 'root', port: '3306', password: 'your password', //上一步设置的密码在此处用到了 }); connection.connect(); var delSql = 'DELETE FROM sys.tutorials_tbl WHERE tutorial_id = 3;'; connection.query(delSql, function(err, result) { if (err) { console.log('[SELECT ERROR] - ', err.message); return; } console.log(result); }); connection.end();
运行后,查看数据库数据,可以看到第三条已经被删除了,如下图所示:
这样一来,就可以利用Nodejs做一些复杂并且有趣的事情了,以上两个示例基本就够了,其他的数据库命令也是如法炮制,这样一来,Nodejs就这样实现前端和后端都链接了起来。
- 我的微信
- 微信扫一扫加好友
- 我的微信公众号
- 扫描关注公众号