Node.JS:使用 alasql 将数据从 mysql 导出到 excel
Node.JS: export data from mysql to excel using alasql
我正在编写一个脚本,使用 Node.JS 和 alasql. I can see examples in doing this.
将数据从 mysql 导出到 excel
var mystyle = {
headers:true,
column: {style:{Font:{Bold:"1"}}},
rows: {1:{style:{Font:{Color:"#FF0077"}}}},
cells: {1:{1:{
style: {Font:{Color:"#00FFFF"}}
}}}
};
alasql('SELECT * INTO XLSXML("restest280b.xls",?) FROM ?',[mystyle,data]);
但是,没有关于变量 data
是什么以及我应该如何构造它的文档,特别是在我使用 mysql 的记录集的情况下?
conn.query(SQL, function(err, rows, fields) {
ALASQL('SELECT * INTO XLSXML("restest280b.xlsx",?) FROM ?',[mystyle,rows]);
})
我尝试直接使用 mysql 记录集。它写入了一个文件,但无法在 excel 中打开。
这里data
是一个数组或者JSON个对象,例如:
var rows = [{a:1, b:10, c:'One'}, {a:2, b:20, c:'Two'} ];
alasql('SELECT * INTO XLSXML("restest280b.xlsx",?) FROM ?',[mystyle,rows]);
如果你使用 node-mysql 包,你的代码应该可以工作。
XLSXML() 函数生成XML 文件,通常Windows 版本的MS Excel 会产生警告。如果你将 XLSX() 函数与 js-xlsx 库一起使用,你可以消除它:
var rows = [{a:1, b:10, c:'One'}, {a:2, b:20, c:'Two'} ];
alasql('SELECT * INTO XLSX("restest280b.xlsx") FROM ?',[rows]);
我正在编写一个脚本,使用 Node.JS 和 alasql. I can see examples in doing this.
将数据从 mysql 导出到 excelvar mystyle = {
headers:true,
column: {style:{Font:{Bold:"1"}}},
rows: {1:{style:{Font:{Color:"#FF0077"}}}},
cells: {1:{1:{
style: {Font:{Color:"#00FFFF"}}
}}}
};
alasql('SELECT * INTO XLSXML("restest280b.xls",?) FROM ?',[mystyle,data]);
但是,没有关于变量 data
是什么以及我应该如何构造它的文档,特别是在我使用 mysql 的记录集的情况下?
conn.query(SQL, function(err, rows, fields) {
ALASQL('SELECT * INTO XLSXML("restest280b.xlsx",?) FROM ?',[mystyle,rows]);
})
我尝试直接使用 mysql 记录集。它写入了一个文件,但无法在 excel 中打开。
这里data
是一个数组或者JSON个对象,例如:
var rows = [{a:1, b:10, c:'One'}, {a:2, b:20, c:'Two'} ];
alasql('SELECT * INTO XLSXML("restest280b.xlsx",?) FROM ?',[mystyle,rows]);
如果你使用 node-mysql 包,你的代码应该可以工作。
XLSXML() 函数生成XML 文件,通常Windows 版本的MS Excel 会产生警告。如果你将 XLSX() 函数与 js-xlsx 库一起使用,你可以消除它:
var rows = [{a:1, b:10, c:'One'}, {a:2, b:20, c:'Two'} ];
alasql('SELECT * INTO XLSX("restest280b.xlsx") FROM ?',[rows]);