NoSQL 数据库比来一段时光都是很受追捧的,也许已经是 Node.js 应用法度榜样的首选后端了。不过,你不该该只是根据潮流来选择拿什么技巧构建下一?项目,应用什么数据库类型要取决于项目标特定需求。如不雅你的项目涉及到动态表的创建,及时的插入等等,那么 NoSQL 就是不错的技巧路线,而另一方面,如不雅项目中要处理复杂的萌芽和事务,那么 SQL 数据库就加倍合适了。
在本教程中,我们会向你介绍若何应用 MySQL 模块 - 这是一个用 JavaScript 编写的运行在 Node.js 之上的 MySQL 驱动法度榜样。我会向你解释若何应用该模块连接到 MySQL 数据库,履行惯例的 CRUD 操作,之后就是对存储的过程进行检查,以及对用户的输入进行转义这些技巧。
这个颇受迎接的教程在 2017 年 11 月 07 日进行了更新。个中的修改包含将语法更新到了 ES6,解决了node-mysql 模块被从新定名的问题,增长了更多对初学者友爱的文字解释,并在 ORM 上新增长了一个部分。
快速入门:如安在Node 中应用MySQL
接下来我们须要做的就是创建一个数据库和一个数据库表。你可以应用一个图形用户界面来做到这一点,比如说 phpMyAdmin,或者就应用敕令行。 对于我们这篇文┞仿,应用的是一个名为 sitepoint 的数据库和一个名为 employees 的表。如不雅你欲望跟着一路操作的话,这里有一个数据库的转储文件,便利你可以快速地启动并运行起来:
也许你来这是就是为了找到一个快速的桥绫桥。如不雅你是想用尽可能少的时光在 Node 中启动并运行 MySQL,我们能知足你的需求!
以下5个简单步调告诉你如安在 Node 中应用 MySQL:
- 创建一个新项目:mkdir mysql-test && cd mysql-test
- 创建一个 package.json 文件:npm init -y
- 安装mysql模块: npm install mysql –save
- 创建一个app.js文件并将下面的代码段复制进去。
- 运行该文件: node app.js。会看到一条 “Connected!”(已连接上了)消息。
安装 mysql 模块
如今让我们细化到第一步。起首,我们应用敕令行创建一个新目次进进入这个目次。然后我们应用 npm init -y 敕令创建 package.json 文件。-y 参数表示 npm 会应用默认值而不会问你各类问题。
这一步假设你已经在体系上安装了 Node 和 npm。如不雅还没安装,请浏览 SitePoint 上的┞封篇文┞仿,它会指导你:应用 nvm 安装 Node.js 的多个版本。
然后,我们大年夜 npm 安装 mysql 模块并将其保存为项目标依附项。项目标 dependencies (相对于 dev-dependencies) 是运行法度榜样所须要的包。你可以浏览懂得两者的差别。
它会将法度榜样保存在 information_schema 数据库的 ROUTINGS 表中。
如不雅你深刻进修应用 npm,可以浏览这个指南,或者在我们的论坛上提问。
在我们连接到数据库之前,有一件重要的工作就是要在你的机械上安装和设备 MySQL。如不雅这件工作还没做完,那就看看软件主页上的安装解释本身去装一个吧。


连接到数据库
如今,我们在 mysql-test 目次下创建一个名为 app.js 的文件,来看看若何大年夜 Node.js 连接到 MySQL。

应用 Grunt 来监督文件的更改
每当我们对代码进行更改时棘手动运行 node app.js 敕令会变得有点乏味,所以让我们来把这个操作主动化吧。 这一节并不须要跟本教程的其余部分并没有依附关系,不过如不雅照着做的话肯定会为你节俭一些麻烦事儿。
我们起首得安装几个包:

Grunt 是有名的 JavaScript 义务履行法度榜样,每当监听到有文件产生修改时,grunt-contrib-watch 都邑运行已经预定义好的义务,并且会应用 grunt-execute 来运行 node app.js 敕令。
安装完成之后,在项目根中创建一个名为Gruntfile.js的文件,然后在琅绫擎添加上如下代码。
大年夜 MySQL 数据库返回的数据可以经由过程遍历 rows 对象来进行解析。

如今运行 grunt watch 然后修改一下 app.js 文件。Grunt 就应当会检测到我们修改了文件并从新运行 node app.js 敕令。
履行萌芽
攫取
如今你知道如安在 Node.js 中建立 MySQL 连接了,再来看看若何履行 SQL 萌芽。我们大年夜这里开端:建立应用 createConnection 敕令连接到名为 sitepoint 的数据库。
如今打开一个终端并输入 node app.js。在连接成功建立之后,你应当可以或许在控制台中看到“Connection established”(连接已经建立好了)这条消息了。 如不雅出现了什愦问题(例如输入了缺点的暗码),法度榜样就会触发一个回调,该事宜会传递出一个 JavaScript Error 对象(err)的实例。 你可以测验测验将其打印到控制台以查看个中包含的有效信息声调试法度榜样。
推荐阅读
一些编程场景中,一件工作可能须要履行一部分逻辑,然后等待一段时光、或者等待某个异步的结不雅、或者等待某个状况,然后持续履行另一部分逻辑。比如微办事架构中,办事A履行了一段逻辑之>>>详细阅读
本文标题:在Node.js中使用MySQL&MySQL JavaScript客户端
地址:http://www.17bianji.com/lsqh/36458.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示