Tag: mysql

使用Node.js处理多个MySQL查询

我是事件/callback风格编程和NodeJS的新手。 我试图实现一个小的http服务器,它使用node-mysql模块来提供ddbb数据。 我的问题来自查询结构。 由于经常有查询需要运行以前的查询结果,因此我无法同时运行所有这些查询(asynchronous),而且我不得不等待一些结果。 我的第一个方法是同时运行所有的非依赖查询,然后循环,直到所有人都设置了一个标志,说我已经完成了,所以我可以继续依赖(同步)的,但我不知道这是否是正确的方法。 像这样的东西: function x(){ var result_for_asynch_query_1 = null var result_for_asynch_query_2 = null mainLoop(){ // call non-dependant query 1 // call non-dependant query 2 // loop until vars are != null // continue with queries that require data from the first ones } } //for each browser request httpServer{ call_to_x(); }.listen(); 这样我可以节省一些时间在最后的结果,因为我不等待所有的反应,而是以一种连续的方式,而只是最长的一个。 […]

NodeJS + MySQL而不是PHP + MySQL。 可以吗?

我已经阅读了关于NodeJS,但无法find它的优势。 我可以使用NodeJS / MySQLreplacePHP / MySQL应用程序吗? 这是个好主意吗? 请考虑一个PHP CMS。 NodeJS能和PHP一样好吗? NodeJS只适用于一些轻量级的操作? 如果可以的话,哪个MySQL模块是最好的?

INSERT INTO失败,使用node-mysql

我正在尝试用node.js插入一些数据。 我已经写了下面的代码,并通过npm安装了MySQL支持,但是我没有把表INSERT INTO到表中。 这是我的代码: var mysql = require('mysql'); function BD() { var connection = mysql.createConnection({ user: 'root', password: '', host: 'localhost', port: 3306, database: 'nodejs' }); return connection; } app.post("/user/create", function(req, res) { var objBD = BD(); var post = { username: req.body.username, password: req.body.password }; objBD.query('INSERT INTO users VALUES ?', post, function(error) { if […]

Node.js mysql查询语法问题UPDATE WHERE

我试图更新MYSQL数据库中的一些信息,但我不知道如何在node.js中做到这一点。 这是我使用的MySQL驱动程序https://github.com/felixge/node-mysql 我到目前为止 connection.query('SELECT * FROM users WHERE UserID = ?', [userId], function(err, results) { if (results[0]) { if (results[0].Name!=name) { console.log(results[0].Name); connection.query('UPDATE users SET ? WHERE UserID = ?', [userId], {Name: name}); } console.log(results[0].UserID); } }); 一切正常,除了… connection.query('UPDATE users SET ? WHERE UserID = ?', [userId], {Name: name}); 在PHP中,我会有这个… mysql_query("UPDATE users SET Name='".$_GET["name"]."' WHERE […]

使用socket.io node.js和传入消息的通知系统的体系结构实现和devise

免责声明 我以前没有用过node.js 我以前没有使用过socket.io 我正在考虑实施Google Plus,Facebook,StackOverflow风格的通知系统。 我不是一个没有经验的开发人员,最终我会弄清楚这一点,但我只是在寻找一个正确的方向。 我想要的是浏览我的网站的用户在浏览会话期间收到新消息时得到通知。 目前,我的所有消息都存储在一个表中。 | id | messageSubject | messageBody | hasRead | readDate | sentDate | sentToUser | sentFromUser | | 1 | HelloWorld | Nada | 0 | `null` | `null | 1 | 10 | 现在,我的所有消息都从几十个不同的来源中检索出来。 消息可以由第三方通过APIinput 消息从发送网格中拉出 消息可以通过私人消息控制器发送。 等等 我想要的是有一种方式能够通知用户收到新消息时。 我很高兴以任何方式重构我的代码,这使我有可能通知我的node.js当我收到插入消息,如果这是我需要做的。 但是我不确定从哪里开始。 我的问题是,我的所有消息都通过几十个不同的来源input到mysql中,我的Insert语句在很多方面。 所以我只是不知道继续下去的最好方法。 谢谢。

重现MySQL错误:服务器closures连接(node.js)

我试图重现一个MySQL错误,我看到我的节点mysql库 EC2上的node.js应用程序: 连接丢失:服务器closures连接。 我无法在本地重现错误 – 杀死数据库被我的代码处理得很好 – 它只是每隔几秒重新检查一次,重新连接到数据库一旦重新启动。 在EC2上,它发生在凌晨4点左右,但数据库仍然运行良好。 我想 用我的本地mysql重现崩溃 在我的mysql helper模块中添加我需要的任何逻辑来处理这个问题 这是我的node.js应用程序中的错误: 2012-10-22T08:45:40.518Z – error:uncaughtException date = Mon Oct 22 2012 08:45:40 GMT + 0000(UTC),pid = 14184,uid = 0,gid = 0,cwd = / home / ec2 -user / my-app,execPath = / usr / bin / nodejs,version = v0.6.18,argv = [/ usr / local […]

Node.js从MySQL查询返回结果

我有以下函数从数据库中获取一个hex代码 function getColour(username, roomCount) { connection.query('SELECT hexcode FROM colours WHERE precedence = ?', [roomCount], function(err, result) { if (err) throw err; return result[0].hexcode; }); } 我的问题是,我在callback函数中返回结果,但getColour函数不返回任何东西。 我希望getColour函数返回result[0].hexcode的值。 在我调用getColour的那一刻,它不会返回任何东西 我试过做类似的事情 function getColour(username, roomCount) { var colour = ''; connection.query('SELECT hexcode FROM colours WHERE precedence = ?', [roomCount], function(err, result) { if (err) throw err; colour = […]

节点Mysql在调用quit之后无法排队查询

我在哪里closuresmysql连接? 我需要按顺序运行查询。 我现在正在编写这样的代码: var sqlFindMobile = "select * from user_mobiles where mobile=?"; var sqlNewUser = "insert into users (password) values (?)"; //var sqlUserId = "select last_insert_id() as user_id"; var sqlNewMobile = "insert into user_mobiles (user_id, mobile) values (?,?)"; connection.connect(function(err){}); var query = connection.query(sqlFindMobile, [req.body.mobile], function(err, results) { if(err) throw err; console.log("mobile query"); if(results.length==0) { var […]

没有列'id'的sequelize表

我有一个表如下的sequelize定义: AcademyModule = sequelize.define('academy_module', { academy_id: DataTypes.INTEGER, module_id: DataTypes.INTEGER, module_module_type_id: DataTypes.INTEGER, sort_number: DataTypes.INTEGER, requirements_id: DataTypes.INTEGER }, { freezeTableName: true}); 正如你所看到的,这个表中没有id列。 但是,当我尝试插入它仍然尝试下面的SQL: INSERT INTO `academy_module` (`id`,`academy_id`,`module_id`,`sort_number`) VALUES (DEFAULT,'3',5,1); 我怎样才能禁用它清晰的idfunction?

如何将JS时间插入到MySQL中

//In Node/JS myDate = moment(data.myTime.format('YYYY/MM/DD HH:MM:SS')).toISOString(); //myDate shows '2014-09-24T04:09:00.000Z' Insert INTO (dateColumn..) Values(myDate)… 这是插入后得到的错误,Mysql中的注释列是“date时间”types。 MySQL错误:: {[错误:ER_TRUNCATED_WRONG_VALUE:不正确的date时间值:'2014-09- 24T04:09:00.000Z'列'_dateColumn'在第1行]代码:'ER_TRUNCATED_WRONG_VALUE',