Node.js:访问mysql数据库

时间:2015-11-25 17:01:13

标签: javascript mysql node.js

我正在编写Node.js应用程序。在我的node-modules/abc/static/example.js文件中,我想通过查询数据库来访问mysql记录。是否可以这样做?

当我包含这样的mysql:

var mysql = require('mysql');

我收到错误:

  

未捕获的ReferenceError:未定义require

是因为它在客户端吗?从' example.js'访问mysql数据库的其他选项有哪些?文件?

2 个答案:

答案 0 :(得分:1)

我猜你是在尝试在客户端使用服务器端j。

你需要npm安装一个mysql适配器,@ coreyg建议这个(https://www.npmjs.com/package/mysql)。

设置一个nodejs项目(如果你还没有这样做):

npm init
npm install --save mysql

然后,您通常会创建某种Web应用程序,以便在客户端提供URL。然后你(使用ajax)请求网址。

在幕后,您的webapp会查询mysql数据库(使用您安装的适配器)以及您想到的任何查询。

一旦你的ajax调用完成,你就可以运行你的回调,它可以用从数据库返回的数据做你想做的事。

这是基本理论。如果您想了解有关如何执行此操作的更多信息,建议您阅读以下问题:How do I get started with Node.js

答案 1 :(得分:0)

继Neil Munro的回答之后, 在启动nodejs并安装mysql npm包后, 您实际上可以从终端执行您的代码。要做到这一点,

您可以在执行这些命令的同一文件夹上创建一个新的js文件, 说mysqlTestProject.js

在这个文件中,你可以把你以前的东西,(需要的东西和所有)。例如:

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'me',
  password : 'secret',
  database : 'my_db'
});

connection.connect();

connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {
  if (err) throw err;

  console.log('The solution is: ', rows[0].solution);
});

connection.end();

``代码取自https://www.npmjs.com/package/mysql

然后从终端(仍在与您相同的文件夹中), 输入此行

node ./mysqlTestProject.js