Здравствуйте. Нужен совет с чего начать и как правильно реализовать. Есть база данных SQL, в которой таблица с полем data и типом BLOB. Нужно извлечь из этого поля BLOB c JSON данными и сделать декомпресс данных gzip(есть данные сжатые и нет в данном поле) и потом парсить как JSON. Буду благодатен за какую-нибудь помощь в реализации в данном коде.
package main
import (
"database/sql"
"encoding/csv"
"fmt"
"log"
"os"
_ "github.com/go-sql-driver/mysql"
_"src/golang.org/x/crypto/acme"
)
func main() {
db, err := sql.Open("mysql", "user:password@tcp(127.0.0.1:port)/database")
if err != nil {
panic(err.Error())
}
rows, err := db.Query(`SELECT field FROM table_1 ORDER BY table_2 LIMIT 10`)
if err != nil {
log.Fatal(err)
}
defer rows.Close()
defer db.Close()
file, err := os.Create("result.csv")
if err != nil {
fmt.Println(err)
}
defer file.Close()
var (
data string
)
cont := 0
writer := csv.NewWriter(file)
for rows.Next() {
err := rows.Scan(&data)
if err != nil {
log.Fatal(err)
}
if cont == 0 {
var record []string
record = append(record, "Date")
writer.Write(record)
cont++
}
var record []string
record = append(record, data)
writer.Write(record)
cont++
}
defer writer.Flush()
}