Я пишу скрипт Google Apps для отправки данных из базы данных Mysql в таблицу больших запросов.
Я знаю, как запросить базу данных mysql. Я знаю, как записать данные из CSV-файла или листов Google в большой запрос. Тем не менее, я хотел бы иметь возможность отправлять результаты запроса MySQL непосредственно в BigQuery. как я могу это сделать?
В основном мои результаты SQL хранятся в переменной:
var results = stmt.executeQuery('select * from table');
Таблица довольно проста:
Col1 Col2 Col3
String 1 foo1 1
String 2 foo2 2
String 3 foo3 3
etc... etc... etc...
Из скрипта стороны Big Query у меня есть это:
var data = results.getBlob().setContentType('application/octet-stream');
очевидно, что при запуске моего скрипта у меня возникает следующая ошибка:
Cannot find function getBlob in object
Я не совсем понимаю, как я могу получить доступ к своим данным в переменной results
, и я не знаю, как отформатировать их в удобочитаемом формате для выполнения следующего .getBlob().setContentType('application/octet-stream')
До сих пор я пытался передать значения results
в новую переменную с именем rawdata
методом push, используя следующий цикл:
while (results.next()) {
var rowString = '';
for (var col = 0; col < numCols; col++) {
rowString += results.getString(col + 1) + '\t';
}
Logger.log(rowString);
rawdata.push(rowString)
}
Однако rawdata.getBlob().setContentType('application/octet-stream');
верните мне ту же ошибку.
Понятия не имею, как отформатировать мои необработанные данные или переменную результатов.