Tag: mysql

哪个ORM for node.js?

我知道这是一个常见的问题,但我已经做了testing,我需要一些特殊的function! 我需要的function是: 将属性映射到列名称 使用不同于型号名称的表格名称 支持软删除(在sequelize偏执模式) 支持logging时间戳(能够为每个不同的模型指定列名) 支持外键 必须支持mysql和sqlite 架构必须支持每个文件的模型 可选function: caching(支持redis / memcache) 命令行工具从数据库生成模型 我testing过了: 节点ORM 处理自己的列名称,你需要一个解决方法 软删除不支持,即使使用外部插件(我试图写一个使用beforeRemove挂钩,但我可以“停止”它删除logging) 不支持每个文件的模型(你需要一个解决方法) sequelize 不要创build外键 无法将属性映射到列名称 支持每个文件的模型,但是它不能很好地工作(你需要把关系放在包含模型的文件中) 节点,坚持 我不喜欢指定连接实例的一切 现在我要testingJugglingDB和Bookshelf.js(但是我不太喜欢最后一个)。

Node.js MySQL需要持久连接

我需要一个持久的MySQL连接为我的节点networking应用程序。 问题是这种情况一天发生几次: Error: Connection lost: The server closed the connection. at Protocol.end (/var/www/n/node_modules/mysql/lib/protocol/Protocol.js:73:13) at Socket.onend (stream.js:79:10) at Socket.EventEmitter.emit (events.js:117:20) at _stream_readable.js:895:16 at process._tickCallback (node.js:415:13) error: Forever detected script exited with code: 8 error: Forever restarting script for 2 time info: socket.io started 这是我的连接代码: // Yes I know multipleStatements can be dangerous in the wrong hands. […]

什么是最成熟/稳定的mysql node.js模块

我正在寻找一些围绕mysql和node.js的工作,并发现了一些不同的模块,但我不能得到他们的稳定性/成熟的良好珠。 我知道每个作者都非常努力的工作,但是对于我们正在做的工作,我需要知道我有一个坚实的mysql基础。 我发现的模块看起来不错,它们是: db-mysql这看起来很活跃。 node-mysql这是我目前看到的一个相当普遍的模块,它似乎处于维护阶段,而且看起来很稳固。 node-mysql-native我喜欢在这里完成的asynchronous工作,但是我不确定它还有多好。 node-mysql-libmysqlclient我不确定这个,但它似乎也是活跃的。 我没有太多太需要的东西。 我需要定期的查询支持,临时演员会很好,我只需要一个良好的基础从头开始。 任何有关这些模块的优点和缺点的build议都会很棒。 如果有另一个质量竞争者,我还没有发现我不反对考虑另一种select。

节点MySQL转义LIKE语句

如何在node-mysql中转义MySQL LIKE语句? 东西沿线 "SELECT * FROM card WHERE name LIKE '%" + connection.escape(req.body.search) + "%'" 结果是 'SELECT * FROM card WHERE name LIKE \'%\'hello\'%\'' 这是一个语法错误。 如果我使用替代语法 connection.query("SELECT * FROM card WHERE name LIKE '%?%'", req.body.search, function () {}); 导致类似的语法错误。 我也试过了 connection.query("SELECT * FROM card WHERE name LIKE ?", '%' + req.body.search + '%', function () […]

如何在nodejs中的单个文件中提供mysql数据库连接

我需要提供模块的mysql连接。 我有这样的代码。 var express = require('express'), app = express(), server = require('http').createServer(app); var mysql = require('mysql'); var connection = mysql.createConnection({ host : '127.0.0.1', user : 'root', password : '', database : 'chat' }); connection.connect(function(err) { if (err) { console.error('error connecting: ' + err.stack); return; } }); app.get('/save', function(req,res){ var post = {from:'me', to:'you', msg:'hi'}; var […]

使用Sequelize(NodeJS)而不是*来指定特定的字段

好吧,所以我在NodeJS中有一个项目,我正在使用Sequelize来创buildMySQL ORM。 这个东西很奇妙,但是我试图弄清楚是否有一种方法可以指定在查询的基础上返回哪些字段,或者甚至是在某处执行.query()的方法。 例如在我们的用户数据库中,可能会有大量的logging和列。 在这种情况下,我只需要返回三列,所以只能得到那些列会更快。 但是,Sequelize只是查询表格中的所有内容“*”,以尽可能完整地实现对象模型。 这是我想在应用程序的这个特定区域中绕过的function。

sequelize.js – 你需要手动安装mysql包

在安装node.js和sequelize.js并运行一个基本的testing之后,显示消息“您需要手动安装mysql包”。 我试过searchnetworking和Stackoverflow的原因这个消息。 我已经安装了: MySQL服务器版本5.5.31-0ubuntu0.13.04.1 节点v0.10.5 sequelize.js v1.6.0

如何使用Sequelize模型自动生成Sequelize CLI迁移?

我有一套Sequelize模型。 我想使用迁移,而不是数据库同步。 Sequelize CLI似乎能够做到这一点,根据这篇文章 :“当您使用CLI生成模型时,您也将获得免费的迁移脚本。” 如何从现有的Sequelize模型中使用Sequelize CLI自动生成迁移?

用Mysql检索上次插入的id

美好的一天, 我愿意在Mysql中检索新插入的行的id值。 我知道有mysqli_insert_id函数,但是: 我无法指定表格 如果同时进行查询,也许会有检索错误ID的风险。 我正在使用node.js MySQL 我不想冒险查询最高的ID,因为有很多的查询,它可以给我错误的… (我的ID列在自动增量)

如何在nodejs中使用sequelize进行连接查询

我正在使用序列化ORM; 一切都很好,干净,但我有一个问题,当我使用join查询。 我有两个模型:用户和post。 var User = db.seq.define('User',{ username: { type: db.Sequelize.STRING}, email: { type: db.Sequelize.STRING}, password: { type: db.Sequelize.STRING}, sex : { type: db.Sequelize.INTEGER}, day_birth: { type: db.Sequelize.INTEGER}, month_birth: { type: db.Sequelize.INTEGER}, year_birth: { type: db.Sequelize.INTEGER} }); User.sync().success(function(){ console.log("table created") }).error(function(error){ console.log(err); }) var Post = db.seq.define("Post",{ body: { type: db.Sequelize.TEXT }, user_id: { type: […]