node.js cannot find module 'mysql'

nodejs cannot find module ‘mysql‘ 问题分析

在windows平台下,测试nodejs连接mysql数据库。

首先 在控制台中安装mysql依赖包

一开始我是在相应js所在在目录下安装mysql支持,结果是:

看到那么多WARN时,以为自己装的有问题,于是准备进行全局安装, npm install -g mysql

并没有error和warn。

但是当执行js时,会抛出异常

原因是:安装成功后,mysql依赖包在C:\Users\陈\AppData\Roaming\npm目录中找到,而js文件中引入mysql模块的路径与之不对应。

如果js文件不在User目录中,把js放到E盘的NodeJS文件夹中,运行node test14_mysql.js就会报cannot find module ‘mysql‘错误

这是因为node是在E:\NodeJS目录下执行mysql.js的,而在NodeJS目录下,node无法找到mysql模块,所以才会报此错误。

解决办法:

可以把js文件放到User目录中,然后再node test14_mysql.js;

也可以在NodeJS目录安装mysql依赖包,然后再node test14_mysql.js;

在NodeJS目录中安装依赖包的方式有两种:

1.直接控制台进入NodeJS目录,然后npm install mysql

2.在NodeJS目录中创建一个package.json文件,把mysql依赖加进去,然后在NodeJS目录中执行npm install,也就是说其实我一开始的安装时成功的,只是被warn给吓住了

node.js cannot find module 'mysql'

时间: 2024-10-20 13:23:57

node.js cannot find module 'mysql'的相关文章

paip.最好的脚本语言node js 环境搭建连接mysql

6.4 一些说明 数据属性可以重写同名的方法属性.这是为了避免在大型系统中产生问题的意外名称冲突.所以用一些减少冲突的常用方法是很有效果的.常用的方法包括:大写字母方法名称,用唯一的字符串来做为数据属性的名称(可以是个下划线_)或者用动词命名方法和用名字命名数据属性. 数据属性就像和对象的普通用户一样可以被方法引用.换句话说,类不能用来实现纯净的数据类型.事实上,在python中不能强制数据隐藏,一切基于约定.(另一方面,如C中写的,python的实现可以做到完全隐藏实现细节并且在必要是可以控制

[转]Node.JS使用Sequelize操作MySQL

Sequelize官方文档  https://sequelize.readthedocs.io/en/latest/ 本文转自:https://www.jianshu.com/p/797e10fe2393 Node.JS提供了操作数据库的基础接口,我们可以通过mysql模块的query方法进行操作,但是需要编写SQL语句,对于SQL语句并不精通的人来说有一定的难度,而且在代码中保留SQL语句也有一定的危险性.为了方便进行数据库操作,ORM框架应运而生,Sequelize正是这样的模块. 安装Se

Node.js Cannot find Module xxx 的问题

不知道为什么第一天Node.js干的挺顺利的,回公司后就干的一点都不顺利,主要原因还是公司的网络的问题,使用的受限制的代理,不能直接使用NPM从远程下载模块,唉. node.js的模块加载顺序首先是从项目目录下的node_modules文件夹下查找,然后一级一级向上查找 ,可以在项目目录下使用 node 命令,然后输入 global.module.paths查看node.js加载模块的顺序. node.js在安装的时候默认会安装npm,npm的默认的模块文件夹可以使用命令 npm root -g

node.js利用express连接mysql数据库

我们创建一个mysql.js (好像大神们,称呼这叫一个模块,然后暴露一个接口)用来连接数据库 var connction ={}; connction.mysql = { host:"localhost",           //这是数据库的地址 user:"root",                  //需要用户的名字 password:"root",            //用户密码 ,如果你没有密码,直接双引号就是 databas

Node.js开发 ---- nodejs操作mysql

app.js[html] view plain copy//初始化包 var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var logger = require('morgan'); var cookieParser = require('cookie-parser'); var bodyParser = require('body-parse

NODE.js同步调用获取mysql快3网站搭建数据时遇到的大坑

mysql调用获取数据,快3网站搭建[企鹅21717-93408]只能是异步方式返回结果,不能同步获取结果,因此,须在回调函数中编写处理事件.期间看了下Aysnc.js,是用于多个要返回回调函数的事件,将这些事件有序的组织起来,最后只返回一个回调函数,并没有改变异步的本质,而是将多个异步整合为一个异步,从而满足写程序的需求. 错误示范 获取数据库中的数据函数 var _getUser = function(name) {var sql = "SELECT * FROM " + TABL

node.js的generic-pool与mysql结合,mysql连接池

var generic_pool = require('generic-pool'); var pool = generic_pool.Pool({ name: 'mysql', max: 10, create: function(callback) { var Client = require('mysql').createConnection({ host:'127.0.0.1', user:'root', password:'123456', database: 'weibo_gs' })

node.js之mysql包使用说明

作者:zhanhailiang 日期:2014.11.16 本文将讲解如何在node.js平台上依赖mysql包实现对mysql的访问. 1. 安装: [root@~/wade/nodejs/nodebeginner/mysql_test]# npm install mysql 2. 基于mysql包实现对mysql的连接和查询: [root@~/wade/nodejs/nodebeginner/mysql_test]# cat mysqltest.js var mysql = require(

基于MySQL + Node.js + Leaflet的离线地图展示,支持百度、谷歌、高德、腾讯地图

1. 基本说明 本项目实现了离线展示百度.谷歌.高德.腾讯地图.主要功能如下: 实现了地图瓦片图下载.存储.目前支持存储至MySQL Node.js服务调用MySQL中的瓦片图 Leaflet展示地图 展示效果如下: 2. 地图瓦片下载工具及配置 工具下载链接: http://pan.baidu.com/s/1qYoHj4K 密码: ehgh 工具使用方法: 数据库配置 打开工具目录中的 MapDownloader.exe.config 文件.根据实际情况填写如图中的配置信息. 地图瓦片图下载