Tag: mysql

如何使用knex.js使用事务

我有使用knex在数据库表中input多个logging,但我没有任何回应。 我的代码如下: addApi : (data,CustomerId) => { knex.transaction(function(trx) { knex('books').transacting(trx).insert({name: 'Old Books'}) .then(function(resp) { var id = resp[0]; return someExternalMethod(id, trx); }) .then(trx.commit) .catch(trx.rollback); }) .then(function(resp) { console.log('Transaction complete.'); }) .catch(function(err) { console.error(err); }); }

Node.js链接与MySQL的循环承诺

我正在尝试将一个非关系数据库变成一个关系数据库。 所以我从没有唯一ID的数据开始。 我需要从一个SQL调用循环中通过这些行得到结果,并且对于每一个,使用第一个结果的一部分执行SQL SELECT,然后使用下一个结果执行另一个SQLselect,然后使用来自第一个最后的查询。 我正在使用Node.js和ES6承诺保持一切顺序,但我似乎失去了一些东西。 实际上,我正在尝试执行额外的SQL调用,并且在第三个查询中也使用了这个结果,但是我正在简化它,只是让一个调用进入另一个调用。 也许一些代码将帮助显示我正在尝试做什么。 这是我的查询类返回承诺: var mysql = require('mysql'); class Database { constructor() { this.connection = mysql.createConnection({ host: "localhost", user: "root", password: "root", database: "pressfile" }); } query(sql, args) { return new Promise((resolve, reject) => { this.connection.query(sql, args, (err, result, fields) => { if (err) return reject(err); resolve (result); }); }); } […]

使用Sequelize mysql更新批量数据

我想更新超过10万的数据,但我无法更新它。 我正在使用Sequalize和MySQL。 我首先从.txt文件中读取数据,然后根据表中已有的数据更新表格数据。 我正在使用Sequalize,但需要1个多小时才能更新100k条logging。 有没有办法使用Sequalize更新批量数据? 这是我的示例代码: async.each(arrayData, function(_arrayData, _callback) { var connection = index.connection; let query = 'UPDATE debit_tran_reg SET response_status ='+'"'+_arrayData.response_status+'"'+',response_rejection_reason='+'"'+_arrayData.response_rejection_reason+'"'+',umrn_no='+'"'+_arrayData.umrn_no+'"'+'WHERE loan_no ='+'"'+_arrayData.loan_no+'"'+''; connection.query(query).spread((results, metadata) => { console.log("results> "+JSON.stringify(results)); }); _callback(); },function(err){ if(err){ console.log(err); }else{ console.log("*****ALL DATA HAS BEEN PROCESSED*****") } });

连接node.js和sphinx的最佳方法

我正在从node.js代码中searchsphinx。 我知道的唯一方法就是连接到mysqld服务器的searchd。 我绝对会知道所有已知的mysql库,但没有连接到狮身人面像。

实时检查数据库发送命令

我正在使用电话系统的用户满意度,当他们的余额达到零时,我需要断开用户的连接。 用户发起呼叫 当前余额被检索 计算电话费用,计算出用户可以购买多less分钟 会话挂断时间然后被存储在数据库中 我需要轮询数据库(每秒?)以查明会话挂断时间是否为<now()。 任何build议,经常投票数据库,我目前使用MySQL,但我愿意改变。 cron不会经常运行。 因为我会每分钟收取一笔费用,所以我需要确保这个脚本的时间是准确的。 我正在查看node.js来完成这个任务,从来没有使用节点 – 它是适合的吗? 是否值得使用数据库的发布/订阅function? (不能冒任何数据丢失的风险,因为这意味着用户可以永远继续打电话) 任何意见表示赞赏。 PS的一切都将是服务器端。 将没有前端发射请求。

如果我可以在node-mysql的callback中做一个“require”,那么模块函数会被添加到callback作用域还是全局作用域?

我正在使用nodejs和node-mysql驱动程序。 我发现自己正在做重复的锅炉板,如 client.query(querystr,queryparams,函数callback(错误,结果,字段){ if (err){ do err related stuff } else { do success related stuff } } 在大多数情况下,一切都是直截了当的,重复的,除了在成功上发生的事情,这取决于查询和上下文的变化。 所以我想封装所有这一切在一个单一的function,并通过querystr,queryparams和成功function。 问题:我不能这样做,因为这是在callback中,我不能让查询引擎使用我的成功函数,即使我通过callbackparameter passing它。 所以我想我可以在callback中做一个“要求”,如果是的话,将“必需”模块的function添加到全局范围或callback范围? 我希望后者B.

使用jQuery进行WordPress数据库的服务器端操作

我想执行自定义的HTML转换使用jQuery的WordPress的post数据库(卫生的HTML,重写图像等)我想通过XSLT,XPath,因为它的力量和美丽的jQuery使用jQuery。 这将是一次批量操作。 运行读取SQL数据库的服务器端脚本,生成DOM树,运行jQuery脚本,然后把结果HTML放回去,最好的办法是什么? 据我所知你可以用node.js做jQuery,但是我对细节不是很熟悉。 我也不知道MySQL连接和服务器端Javascript是什么情况。

从node.js应用连接到mysql,错误:“dyld:lazy symbol binding failed:Symbol not found:_mysql_init”

我使用XAMPP的OSX 10.6.8和MySQL。 当我运行这个node.js应用程序(app.js)时: var mysql = require('mysql-libmysqlclient'); var conn = mysql.createConnectionSync(); conn.connectSync('127.0.0.1', 'root', '', 'database_name'); 我看到这个输出: Airs0urce:nodejs airs0urce$ node app.js dyld: lazy symbol binding failed: Symbol not found: _mysql_init Referenced from: /Applications/XAMPP/xamppfiles/htdocs/myproject/nodejs/node_modules/mysql-libmysqlclient/build/Release/mysql_bindings.node Expected in: dynamic lookup dyld: Symbol not found: _mysql_init Referenced from: /Applications/XAMPP/xamppfiles/htdocs/myproject/nodejs/node_modules/mysql-libmysqlclient/build/Release/mysql_bindings.node Expected in: dynamic lookup Trace/BPT trap Googlesearch之后已经尝试了一些解决scheme。 添加从XAMPP目录的MySQL库,包括path: export DYLD_LIBRARY_PATH=/Applications/XAMPP/xamppfiles/lib/mysql:$DYLD_LIBRARY_PATH 试图用MacPorts安装mysql5-devel […]

Sequelize和节点v0.6.1

我使用Sequelize ORM for Node来实现一个脚本。 我使用节点0.6.1,但是当我执行脚本时,显示以下日志: “sys”模块现在称为“util”。 它应该有一个类似的界面。 Sequelize支持nodE的0.6.1版本吗?

node.js – 我锤击我的数据库?

我是节点的新手,已经编写了一个可以在开发环境中工作的程序,但是我担心它的生产性能。 在下面的代码中,我使用我自己的mysqlAsync.queryEach方法(让我知道如果你想我分享)。 它使用通用池,MySQL和asynchronous库。 我已经使用通用池共享多达10个MySQL连接。 mysqlAsync.queryEach方法使用文档中的async.forEach方法执行以下操作。 并行地将迭代器函数应用于数组中的每个项目。 function doSomethingWithExercises(callback) { mysqlAsync.queryEach("SELECT * FROM subjects ORDER BY id", function(subject, done) { mysqlAsync.queryEach("SELECT * FROM exercises WHERE id = ? ORDER BY id",[subject.id] function(exercise, done) { //do something with the exercises }, //then… function() { done() }); }, //then… function() { //done callback() }); } 因此,第一次调用queryEach发出另一个x调用另一个queryEach。 它可以同时发出1000个同时查询。 在我的具体使用情况中,这个过程被用来构build一个rediscaching,而不是每个连接都不经常发生。 […]