nodejs如何安装mysql包

nodejs中可以利用npm工具来安装mysql包,具体安装方法:1、打开终端,进入指定项目目录;2、执行“npm install mysql –save”命令,等待下载并安装完成即可。

nodejs如何安装mysql包

本教程操作环境:windows7系统、nodejs 14.15.4版,DELL G3电脑。

nodejs安装mysql包、连接MySQL的方法

首先要安装nodejs和npm。

写了一个简单的小例子,整个小例子使用了express框架,node_modules里面已经下载好了express和ejs模板。先来看下目录:

1.png

server.js   =》  node.js的服务器启动文件

db.js   =》  数据库操作文件

views  =》  存放模板文件,也就是所有的页面存放的地方

public =》  存放所有静态资源的地方,比如css js images之类的

连接MySQL的方法:

第一步,需要安装一个叫做MySQL的npm包,这个包是官方提供的,稳定性是可以保证的,当然,也还有其他的npm包,这里我们只使用mysql包。安装的方法很简单了,输入指令 npm install mysql –save,等待下载完成.

nodejs如何安装mysql包

看到这个样子,那就是安装成功了。

然后我们打开db.js文件,在里面写入数据库中操作必须的一些代码,看下图:

nodejs如何安装mysql包

代码很少,意思也很明显,第一步需要引入以mysql包,然后我们创建一个空对象,并且给他赋值一个叫query的方法,这个方法接受两个参数,第一个参数是你查询数据时候的sql语句,第二个参数是获取查询结果的回调函数。

再看函数内部,第一块代码是用来设置操作mysql的配置的:

nodejs如何安装mysql包

host表示mysql安装的地址,因为我是本地的数据库,所以直接使用localhost

user表示mysql的用户名

password表示mysql的密码

database表示你要选择操作的具体的库的名字

port表示端口,可不填,默认就是3306

mysql.createConnection的返回值connection是我们接下来操作mysql的一个具体的对象,所有的操作方法都是基于他的。

调用connection的connect方法判断连接是否成功,如果失败,则把错误信息打印出来,并且停止运行。

nodejs如何安装mysql包

调用connection的query方法来直接向数据库发送sql语句,并且把用回调函数返回结果,其中回调函数中有三个参数,第一参数是错误对象,如果操作失败,则会停止并打印错误信息,第二参数是具体的返回的结果,正常情况下是一个数组,里面包含很多json,第三个参数也是一个数组,里面包含着最每个数据的解释,比如当前数据属于哪个库,那张表等等。我们使用最多的自然是第二个参数了

nodejs如何安装mysql包

 

 当数据库操作结束以后关闭连接

nodejs如何安装mysql包

 

整个过程很简单,只是其中有两个问题,第一个是数据库连接丢失的问题,不知道有没有人碰到过,第一次访问首页的时候,连接数据库正常,第二次访问首页,数据库连接不上了,会报错说连接丢失。这个原因是我们每操作完一次数据库就关闭了数据库连接,再次访问的时候就找不到连接了,但是连接又不能不关闭,有人可能觉得奇怪,每次访问首页时候都会访问db.js文件,不是每次都会有一个新连接产生吗?是的,只是我最开始的时候生成连接的那段代码并没有放到db.query的函数中,而是放在外面,如下图:

nodejs如何安装mysql包

这样就导致连接只生成一次,关闭了以后,第二采访得不到连接。把它放在函数里面以后,使用exports对外暴露接口。每次访问首页,都会重新走一遍创建连接的过程,每次都能拿到一个新的连接,这样访问就没有问题了。其实项目中可以直接使用连接池。省去了很多麻烦。

第二个问题是我们在server.js中引入了db.js

nodejs如何安装mysql包

此时大家可能看到了,mysql.query有两个参数,第一个是sql,第二个是回调函数,回调函数有一个result的参数,其实他就是数据库查询出来的结果。有人会说为什么不直接在db.js中使用return,把查询结果返回,搞什么回调啊!

nodejs如何安装mysql包

其实这里就是node.js的异步造成的一些问题了,如果我们把server.js中的代码改成下图

nodejs如何安装mysql包

因为我们看到了mysql包的query方法是异步操作,这就导致下面的res.render()方法不会等待他把结果查询出来以后再执行,往往是结果还没出来,就已经开始渲染页面,但是数据又没有得到,所以就会报错了。因此只好传送了一个回调函数进去,在mysql的query方法结束以后,把结果通过参数传入到我们自己写的回调函数中,这样我们就能在回调函数里得到结果了。然后再执行渲染。当然处理这个问题还可以引入第三方包 async来解决异步问题,具体看个人了。

【相关推荐:《windows环境下怎么安装nodejs?》】

以上就是nodejs如何安装mysql包的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2946951.html

(0)
上一篇 2025年3月11日 22:50:17
下一篇 2025年3月8日 22:44:18

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 使用nodejs如何设置编码

    方法:1、使用“res.write(“”)”语句;2、使用“res.setHeader()”或“res.writeHeader()”设置Content-type类型。 本教程操作环境:windows7系统、nodej…

    2025年3月11日
    200
  • vuejs一定要装nodejs吗

    vuejs不一定要装nodejs。使用Vue有两种方式:1、利用vue-cli搭建vue项目,此时需要用到nodejs;2、创建一个html文件,在该文档中使用script标签引入“vue.js”文件,这样就用不到node,也就不需要安装。…

    2025年3月11日
    200
  • node.js和javascript有什么区别

    区别:1、JavaScript是一种脚本语言,而Node.js是一个让JavaScript运行在服务端的开发平台;2、JS偏向前端浏览器,node偏向后端;3、JS中的顶层对象是window对象,而node中的顶层对象是global对象。 …

    2025年3月11日
    200
  • nodejs是和js一样吗

    nodejs和js不一样。两者的区别:1、nodejs是平台,而js是编程语言;2、顶层对象不同,JS中的顶层对象是window对象,node中的顶层对象是global对象;3、nodejs与js的组成不同。 本教程操作环境:windows…

    2025年3月11日
    200
  • nodejs是js么

    nodejs不是js,而是一个让js运行在服务端的平台。js(全称JavaScript)是一种编程语言,而Node是一个基于Chrome V8引擎的JavaScript运行环境,一种让JavaScript运行在服务端的开发平台。 本教程操作…

    2025年3月11日
    200
  • nodejs升级的两种方法是什么

    node升级的两种方法:1、利用NVM工具,语法“nvm install lastest”、“nvm install stable”;2、利用Node Binary管理模块,语法“n stable”、“n latest”或“n 版本号”。 …

    2025年3月11日
    200
  • hbuilder怎么安装nodejs模块

    hbuilder安装nodejs模块的方法:1、打开hbuilder软件,点击顶部菜单栏的“工具”-“插件安装”选项;2、在打开的“插件安装”界面,找到并勾选nodeeclipse插件,点击“安装”按钮,等待安装成功,重启软件即可。 本教程…

    2025年3月11日 编程技术
    200
  • nodejs的版本管理工具有哪些

    nodejs的版本管理工具有:1、nvm工具;在macOS、Linux和各种其他类Unix系统上均受支持,但Windows支持程度不佳。2、n工具;没有子shell,没有配置文件设置,没有复杂的API。3、nodenv工具。 本教程操作环境…

    2025年3月11日 编程技术
    200
  • nodejs诞生于哪年

    nodejs诞生于2009年5月,是由大神Ryan Dahl开发的一个基于Chrome V8引擎的JavaScript运行环境;它使用了一个事件驱动、非阻塞式I/O模型,让JavaScript可以运行在服务端的开发平台。 本教程操作环境:w…

    2025年3月11日
    200
  • 现在哪些公司用nodejs

    用nodejs的公司:1、Netflix;2、Trello;3、PayPal;4、LinkedIn;5、Uber;6、Groupon;7、Medium;8、NASA;9、领英;10、雅虎;11、eBay;12、沃尔玛等等。 本教程操作环境:…

    2025年3月11日 编程技术
    200

发表回复

登录后才能评论