From a96e12c694523a6ca6c4d98f4f4d30f8d72397d9 Mon Sep 17 00:00:00 2001 From: adatzer Date: Wed, 6 Jan 2021 14:55:40 +0200 Subject: [PATCH] Snowflake: convert query output to string before printing (closes #166) --- sql_runner/snowflake_target.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/sql_runner/snowflake_target.go b/sql_runner/snowflake_target.go index 5c73915..8eca135 100644 --- a/sql_runner/snowflake_target.go +++ b/sql_runner/snowflake_target.go @@ -136,8 +136,9 @@ func printSfTable(rows *sql.Rows) error { } vals := make([]interface{}, len(cols)) - for i := range cols { - vals[i] = new(sql.RawBytes) + rawResult := make([][]byte, len(cols)) + for i := range rawResult { + vals[i] = &rawResult[i] } for rows.Next() { @@ -147,7 +148,7 @@ func printSfTable(rows *sql.Rows) error { } if len(vals) > 0 { - outputBuffer = append(outputBuffer, stringify(vals)) + outputBuffer = append(outputBuffer, stringify(rawResult)) } } @@ -167,10 +168,10 @@ func printSfTable(rows *sql.Rows) error { return nil } -func stringify(row []interface{}) []string { +func stringify(row [][]byte) []string { var line []string for _, element := range row { - line = append(line, fmt.Sprint(element)) + line = append(line, fmt.Sprint(string(element))) } return line }