使用谷歌应用脚本从 MYSQL 数据库中获取数据时,谷歌电子表格的单元格中缺少某些值
Posted
技术标签:
【中文标题】使用谷歌应用脚本从 MYSQL 数据库中获取数据时,谷歌电子表格的单元格中缺少某些值【英文标题】:Some Values are missing in the cells in google spread sheet when fetching the data from MYSQL Database using google app script 【发布时间】:2020-03-20 13:02:11 【问题描述】:请帮忙
。 当我在 mysql Workbench 中检查相同的内容时,其中显示了值。
function myMySQLFetchDataMS()
var stmt = conn.createStatement();
var start = new Date(); // Get script starting time
var date1 = "'%Y-%m-01'";
var event = "'%Event%'";
var selfserve = "'%Self Serve%'";
var Bidding="'%Bidding%'";
var Filler="'%Filler%'";
var query = 'SELECT *from campaigns';//added missing closing single quote and spelled campaigns properly by Cooper
var rs = stmt.executeQuery(query)
var doc = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("MS");
if (doc != null)
var range = doc.getRange("A:F");
range.clearContent();
Logger.log(doc.getIndex());
// Returns the currently active spreadsheet
var cell = doc.getRange('a1');
var row = 0;
var getCount = rs.getMetaData().getColumnCount(); // Mysql table column name count.
for (var i = 0; i < getCount; i++)
cell.offset(row, i).setValue(rs.getMetaData().getColumnName(i+1)); // Mysql table column name will be fetch and added in spreadsheet.
var row = 1;
while (rs.next())
for (var col = 0; col < rs.getMetaData().getColumnCount(); col++)
cell.offset(row, col).setValue(rs.getString(col + 1)); // Mysql table column data will be fetch and added in spreadsheet.
row++;
rs.close();
stmt.close();
conn.close();
var end = new Date(); // Get script ending time
Logger.log('Time elapsed: ' + (end.getTime() - start.getTime())); // To generate script log. To view log click on View -> Logs.
谷歌电子表格单元格截图
Mysql Workbench 单元格截图
带有标题的屏幕截图 enter image description here
【问题讨论】:
您能分享一份经过清理的工作表副本吗? 尝试getFloat()
或其他类型,而不是getString
@RafaGuillermo - 我没听懂你?您想要带有代码的 Google 电子表格副本吗?
@TheMaster - 但是它将如何获取字符串值?
那里看起来不像字符串。不都是数字吗?
【参考方案1】:
我建议改变:
这个var range = doc.getRange("A:F");
到这个var range = doc.getRange(1,1,doc.getLastRow(),6);
【讨论】:
测试了您推荐的更改,但仍然无法正常工作。以上是关于使用谷歌应用脚本从 MYSQL 数据库中获取数据时,谷歌电子表格的单元格中缺少某些值的主要内容,如果未能解决你的问题,请参考以下文章