nodejs cannot find module 'mysql' 问题分析

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

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

安装成功后,mysql依赖包可以在User目录中的node_modules文件夹中找到

然后新建一个测试mysql连接的js文件mysqltest.js

var mysql = require('mysql');
var connect = mysql.createConnection({
    host:'localhost',
    user:'root',
    password:'',
    database:'test',
    port:3306
});
connect.connect();
console.log("mysql has connnected");
connect.end();
console.log("mysql has colsed");

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

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

解决办法:

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

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

 

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

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

2.在NodeJS目录中创建一个package.json文件,把mysql依赖加进去,然后在NodeJS目录中执行npm install

{
    "name":    "mysqltest",
    "description": "test project",
    "version": "0.0.1",
    "private": true,
    "devDependencies":{
        "mysql":"2.6.2"
    }
}

如果需要添加多个依赖包,用第二种方式较为方便

posted @ 2015-05-26 16:19  adtxgc  阅读(18320)  评论(0编辑  收藏  举报