有没有办法将云端SQL数据导出到Excel工作表,而无需使用 Google Apps脚本将其复制到Google电子表格。
由于Google Spreadsheet有4,00,000个单元格的限制,我希望将数据直接导出到Excel工作表,而不是将其复制到电子表格。
我特别想使用Google Apps脚本来实现它。
答案 0 :(得分:0)
是的,您可以提供CSV文件,您可以将其设置为下载。我附上了一个示例脚本,向您展示它是如何工作的。
警告:由于这是逗号分隔值文件,因此您必须确保数据不包含逗号。
function doGet(e) {
if (parseInt(e.parameter.download) == 1) {
var someData = [{name:"Jerry",
age:27,
married:true},
{name:"Harry",
age:16,
married:false},
{name:"Gary",
age:65,
married:true},
{name:"Larry",
age:41,
married:false}];
var output = "Name,Age,Married?\n";
for (var i in someData) {
output += someData[i].name + ","+someData[i].age + ","+someData[i].married + "\n";
}
return ContentService.createTextOutput(output).downloadAsFile("data.csv");
} else {
var app = UiApp.createApplication();
var anchor = app.createAnchor("Download the CSV File",ScriptApp.getService().getUrl()+"?download=1");
app.add(anchor);
return app;
}
}
注意:因为您正在寻找这么大的文件,所以这实际上可能不起作用。你的脚本可能会超时。假设您拥有的每个条目都是100个字节,那么您将拥有一个400 MB的Excel文件?这一般来说很大。
答案 1 :(得分:0)
直接从excel https://developers.google.com/cloud-sql/docs/external
使用odbc / jdbc,可以避免g应用和电子表格的限制