I\'m trying to auto-populate some raw data on a sheet in my google sheets file with a query.
It doesn\'t look like sheets has any built in functionality to do so lik
Abielita answer works nice
I'm only add some extra lines in order to write the data into the active sheet.
// Replace the variables in this block with real values.
var address = 'host';
var user = 'user';
var userPwd = 'password';
var db = 'dbname';
var dbUrl = 'jdbc:sqlserver://'+address+";databaseName="+db+";";
// Read up to 1000 rows of data from the table and log them.
function readFromTable() {
var conn = Jdbc.getConnection(dbUrl, user, userPwd);
var start = new Date();
var stmt = conn.createStatement();
stmt.setMaxRows(1000);
var results = stmt.executeQuery('select * from TableName');
var numCols = results.getMetaData().getColumnCount();
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var cell = sheet.getRange('A1');
var numCols = results.getMetaData().getColumnCount();
var row =0;
while (results.next()) {
var rowString = '';
for (var col = 0; col < numCols; col++) {
rowString += results.getString(col + 1) + '\t';
cell.offset(row, col).setValue(results.getString(col +1 ));
}
row++
Logger.log(rowString)
}
results.close();
stmt.close();
var end = new Date();
Logger.log('Time elapsed: %sms', end - start);
}