Articles of mysql

Node.js,Express和Mysql。 如何正确的方式

我想要实现的是在闭包内进行数据库查询。 返回数据,然后发送给用户的东西。 我知道最好的做法是使用数据库池。 问题是查询不同步。 简化代码: server.js var express = require('express'), app = express(), server = require('http').createServer(app), mysql = require('mysql'); app.set('DB:pool', mysql.createPool(process.env.DATABASE_URL)); var myClosure = require('./closure.js')(app)); app.get('/somepage', function(req, res) { var data = myClosure.myquery(); res.send(data); }); app.get('/anotherpage', function(req, res) { var data = myClosure.myquery(); res.send(data); }); app.listen(3000); closure.js function myClosure(app) { var pool = app.get('DB:pool'); return […]

NodeJS MySQL转储

我试图写一个基本的cron脚本来运行和“转储”一个mysql数据库。 出于某种原因,当“成功保存文件”时,它会创build文件,但是它是空的。 如果不是保存文件,我执行一个console.log,它打印一个空string。 任何想法,我可能做错了什么? 提前致谢。 var mysql_backup = function(){ this.backup = ''; this.mysql = require('mysql'), this.init = function(){ this.connection = this.mysql.createConnection({ user: 'root', password: 'root', database: 'test' }); } this.query = function(sql, callback) { this.connection.query(sql, function (error, results, fields) { if (error) { throw error; } if (results.length > 0) { callback(results); } }); } […]

无法使用Sequelize连接到MySQL

试图连接到我的服务器上的MySQL数据库时,我始终得到一个SequelizeConnectionRefusedError 。 login凭证是正确的,端口是开放的,一切似乎都很好(在开发环境中就像一个魅力一样)。 对不起,由于稀缺的背景信息,但我在这里傻眼了 – 我真的不知道可能是什么原因造成这个问题。 这是我的输出从mysql –version mysql Ver 14.14 Distrib 5.5.43, for debian-linux-gnu (x86_64) using readline 6.3 这是我用来初始化Sequelize的代码。 我想要它使用的表尚不存在,但我相当肯定,这个问题没有任何关系。 我已经尝试用root用户login,但没有骰子 – 我仍然得到相同的错误。 var sequelize = new Sequelize("database", username, password, { host: "localhost", dialect: "mysql", port: 3306, define: { paranoid: true } }); var Model = sequelize.define("Model", { md5: {type: Sequelize.STRING(128)}, ip: {type: Sequelize.STRING(256)}, […]

如何在Knex JS中使用IS NOT NULL

我正在尝试使用knex创build以下查询: SELECT * FROM users group by users.location having users.photo is not null 如下: knex("users").groupBy("users.location").having("users.photo", "IS NOT", "Null") 我收到以下错误: The operator IS NOT is not permitted 我已经通过他们的文档,找不到任何有用的东西。

用knex.js查询多个表

我想使用Expres.js和knex.js两个表格来渲染,只使用一个get函数,以便在一个HTML模板中使用两个表格中的数据。 当我查询只有一个表(学校或学生),但我不知道如何处理两个表。 任何build议? app.get('/schools', function(req, res) { knex.select() .from('schools', 'students') .then(function(schools, students) { res.render('schools', { schools: schools, students: students }); }).catch(function(error) { console.log(error); }); });

REST风格的Api或Socket.IO

我正在写手机应用程序。 它连接到node.js服务器并获取一些数据。 哪个是从nodejs服务器检索数据的最佳方法? 我的项目架构: mySQL DB < – > node.js(服务器)< – (socket.io或restful) – >移动客户端

无法将nodejs连接到mysql

我在windows上运行Node.js 0.10.31 ,在192.168.2.150上运行虚拟机的ubuntu上运行mySQL 5.5.35 。 现在连接节点JS到MySQL我已经使用以下连接器: https://github.com/felixge/node-mysql 代码: var mysql = require('mysql'); var connection = mysql.createConnection({ host : '192.168.2.150', user : 'root', password : '*****', port : 3306 }); connection.connect(function(err) { if (err) { console.error('error connecting: ' + err.stack); return; } console.log('connected as id ' + connection.threadId); }); connection.query('SELECT 1', function(err, rows) { // connected! […]

ER_TRUNCATED_WRONG_VALUE_FOR_FIELD将一些string保存到mysql

我正在使用node.js, node-mysql npm模块,在mysql( sql_mode=STRICT_ALL_TABLES )中有一个utf8列,并且可以正常存储“常规”的utf8字符,但是对于某些input,它会抛出: AssertionError: Error: ER_TRUNCATED_WRONG_VALUE_FOR_FIELD: Incorrect string value: '\xF3\xA5\xB5\xA5\xEF\xBF…' 我想这是由于一些字符在utf8之外。 我知道可以在mysql中使用utf8mb charset,但在这种情况下,我不关心这些字符,只想从string中删除它们,而不是更改mysqlconfiguration。 是否有可能使用node.js删除这些字符?

节点JS风帆两个不同的数据库

我build立一个应用程序,我有一个本地数据库(MySQL),但我需要连接到另一个数据库以及我可以从第二个数据库(甲骨文)拉一些信息,没有任何人有任何信息或例子使用Sailspipe理多个数据库? 谢谢。

node.js mySQL连接通过一个单例

我在node.js中为mySQL连接使用了一个singleton模式,并且只有一个连接可供整个应用程序使用,我担心的是如果单连接所持有的连接有一些超时设置。 这个连接应该在应用程序的整个生命周期中生活。 我search并find了一些使用池的持久性示例,但不知道这是否适用于此示例,没有连接池,组件之间只有一个要共享的连接,问题是,是否有一些超时设置会终止连接被搁置了很长时间之后? puremvc.define( { name: "common.model.connections.App", constructor: function() { var mysql = require("mysql"); this.connection = mysql.createConnection({ host: common.Config.mySQLHost, user: common.Config.mySQLUsername, password: common.Config.mySQLPassword, database: common.Config.mySQLDatabase }); this.connection.connect(); } }, { }, { NAME: "App", instance: null, connection: null, getInstance: function() { if(common.model.connections.App.instance == null) { common.model.connections.App.instance = new common.model.connections.Fico(); } return common.model.connections.App.instance; }, getConnection: function() […]