按照Piping results with Streams2上的示例,我正在尝试将结果从MySQL传递到node.js中的stdout。
代码如下所示:
connection.query('SELECT * FROM table')
.stream()
.pipe(process.stdout);
我收到此错误:TypeError: invalid data
答案 0 :(得分:8)
从这个项目的github issue:
.stream()
返回“objectMode”中的流。您无法将其传输到stdout或网络 套接字,因为“data”事件将行作为有效负载,而不是缓冲区块
您可以使用csv-stringify
模块解决此问题。
var stringify = require('csv-stringify');
var stringifier = stringify();
connection.query('SELECT * FROM table')
.stream()
.pipe(stringifier).pipe(process.stdout);
注意.pipe(stringifier)
.pipe(process.stdout)
答案 1 :(得分:0)
随着 <button class="reset"> reset </button>
<div class="grid"></div>
在 Node v10 中的引入,现在有另一种解决方案。
管道方法做了几件事:
pipeline
方法的优点。pipe