【问题标题】:How can I begin MySQL work in Node.js on Windows?如何在 Windows 上的 Node.js 中开始 MySQL 工作?
【发布时间】:2012-08-27 07:51:26
【问题描述】:

我最近开始使用 Node.js,原因有很多,但最重要的是我可以轻松地使用 HTML5 WebSockets 编写聊天服务器。然而,我已经被 MySQL 卡住了好几个星期了。

我目前正在使用这个 MySQL 客户端模块:https://github.com/sidorares/nodejs-mysql-native

我已连接到数据库并设法使用以下代码存储数据:

// MySQL database
var db = require("mysql-native").createTCPClient(); // localhost:3306 by default
db.auto_prepare = true;
db.auth(dbName, dbUser, dbPass);
// Update the database
db.execute("UPDATE server_data SET value='" + new Date() + "' WHERE name='lastLoaded'");

如何使用SELECT * FROM x WHERE y=z 查询从数据库中检索数据?

【问题讨论】:

    标签: mysql database node.js


    【解决方案1】:

    您选择nodejs-mysql-native 而不是node-mysql 有什么特别的原因吗,node-mysql 是一个非常好的节点模块。如果没有,那么您可能应该尝试node-mysql。我已经尝试过了,开始使用 MySQL 和 Node.js 非常棒。你可以这样做:

    var mysql      = require('mysql');
    var connection = mysql.createConnection({
      host     : 'localhost',
      user     : 'your_username',
      password : 'your_password',
    });
    
    connection.connect();
    
    connection.query("UPDATE server_data SET value=? WHERE name=?", [new Date(), 'lastLoaded'] function(err, result) {
      if (err) throw err;
      console.log('Result: ', result);
    });
    
    connection.end();
    

    通过这种方式使用它的好处是可以防止 SQL 注入,这是在 node-mysql 内部处理的(通过使用 connection.escape() 方法)。

    【讨论】:

    • 感谢您的建议!我已经成功安装了那个模块!我选择 nodejs-mysql-native 的原因是因为它似乎是我的 Windows 机器的合乎逻辑的选择。再次感谢。
    • 只需浏览node-mysql 页面上的文档即可。编写此模块的人 Felix 在节点社区中享有很高的声誉。这个模块的开发也很活跃。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-27
    • 1970-01-01
    • 2016-12-24
    • 1970-01-01
    • 2015-06-13
    • 2014-01-12
    相关资源
    最近更新 更多