Articles of mysql

我如何设置Sequelize.jsstream数据而不是承诺/callback?

我正在使用MySQL并有一个非常大的响应(15,000 +行)。 这需要..时间。 但是我可以马上处理第一个结果。 我可以设置一个stream以某种方式sequelize ? 如果是这样,怎么样?

续集复合唯一约束

定义模型: export default function(sequelize, DataTypes) { return sequelize.define('Item', { minor: DataTypes.INTEGER, major: DataTypes.INTEGER, }); } 我可以将minor和major定义为复合UNIQUE约束吗?

Node.js – 连接到MySQL数据库服务器

我得到了服务器A,这是一个node.js服务器,服务器B是Apache的PHP服务器。 我想知道如何使用服务器A从服务器B上的数据库获取数据。有没有一个模块或中间件可以做到这一点?

Node.JS + MySQL连接池需要?

使用node-mysql模块,有两个连接选项 – 一个连接和一个连接池。 build立与MySQL数据库的连接,为所有请求使用单个全局连接,或为每个请求创build一个连接池并从池中取出一个连接池的最佳方法是什么? 还是有更好的方法来做到这一点? 我是否会针对所有请求使用单个共享连接来运行问题?

使用node-mysql创build同步查询

我试图确保一个MySQL查询导致另一个,并没有完成,直到所有的子查询完成。 因此,例如,我从一个select和stream行开始,并执行该行结果的后续查询。 这可以通过callback来实现,但是我最终会耗尽内存,所以我想减慢进程并运行批处理,但是由于调度的asynchronous性,我不能保持相同的状态并结束在所有的行都被处理之后进行连接。 这是一个例子: var query = conn.query('select id from table1 limit 10'); query.on('result', function(row){ console.log('query1', row); var query2 = conn.query('select id from books where id = ? ', [row.id]); query2.on('result', function(row2){ console.log('query2', row2); var query3 = conn.query('insert into test (id) values (?)', [row2.id]); query3.on('result', function(row3){ console.log(row3); }); }); }); query.on('end', function(){ conn.end(); }); 以上失败,因为在初始查询结束后仍然有行要在query3中处理。 […]

节点js(getConnection)

var nodePort = 3030; var express = require('express'); var app = express(); var bodyParser = require('body-parser'); var db = require('mysql'); var dbPool = db.createPool({ host : 'localhost', user : 'root', password : '1234', database : 'test', port : 3306 }); app.use( bodyParser.json() ); app.get('/api/db', function(req, res){ res.setHeader('content-type', 'application/json'); dbPool.getConnection(function(objErr, objConn){ if(objErr){ sendError(res, 503, 'error', 'connection', […]

Sequelize不能创build表,但是当我在MySQL CLI中运行相同的工作

我正在使用sequelize并遇到一个奇怪的错误: Executing (default): CREATE TABLE IF NOT EXISTS `groups` (`id` INTEGER NOT NULL auto_increment , `groupname` VARCHAR(255), `groupkey` VARCHAR(255), `createdAt` DATETIME NOT NULL, `updatedAt` DATETIME NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB; Executing (default): CREATE TABLE IF NOT EXISTS `users` (`id` INTEGER NOT NULL auto_increment , `username` VARCHAR(255) UNIQUE, `password` VARCHAR(255), `salt` VARCHAR(255), `token` VARCHAR(255), `group_id` […]

在NodeJS的准备查询中设置多个字段

我在Node中使用'mysql'库 这是我使用,而不是准备好的声明,工作得很好: connection.query("update table set col1=? where col2=1",[val1],function(err,rows){ //connection.release(); if(!err) { //further code } }); 但是,这不适用于2个不知情的情况: connection.query("update table set col1=? where col2=?",[val1],[val2],function(err,rows){ //connection.release(); if(!err) { //further code } }); 错误消息显示“未定义不是函数”。 我究竟做错了什么?

包含文件时node.js上的引用错误

我是node.js新手。 我有两个文件。 他们是index.js和db.js 我的index.js是 var connection = require('./db.js'); device = new Device({ id: 93, name: 'test1' }); device.save(); 我的db.js是 var mysql = require('mysql2'); var mysqlModel = require('mysql-model'); var appModel = mysqlModel.createConnection({ host : 'localhost', user : 'root', password : 'root', database : 'db', }); var Device = appModel.extend({ tableName: "DeviceTable", }); 在运行节点index.js的时候,我收到了error device = new […]

如何访问RowDataPacket mysql-node.js

connection.query(' SET @update_id := 0; UPDATE relations set x1 = ?, y1 = ?, id = (SELECT @update_id := id) WHERE element_to =?; SELECT @update_id;',[data.x2,data.y2,id],function(err,result){ if(err){console.error(err);} else{console.log(result);console.log(result.@update_id);} }); 我从查询执行中得到以下结果: [ RowDataPacket { '@update_id': 'WAbWA1WA5WA2WA8WAdWA4WA9' } ] ] 如何访问@update_id字段以将值存储在variables中。 我知道这些是对象,我尝试以下访问它们,如下所示: results.@update_id; 但是当我尝试logging该值时,我得到了未定义的值。 如何获得价值?