golang

Jak poradzić sobie z null w GO

Jak poradzić sobie z null w GO

slav
Dzisiaj miałem okazję wyprodukować trochę kody w GO, który miał coś wyciągać z MySQL. Dane pochodziły z tabeli, która miała strukturę z polami typu data datetime DEFAULT NULL. Problem pojawił się przy skanowaniu rekordów: panic: sql: Scan error on column index 2: unsupported Scan, storing driver.Value type <nil> into type *time.Time Problem pojawił się, ponieważ skaner nie potrafi przerobić null’a na datę. Generalnie można skorzystać z typu mysql.NullTime który znajduje się w pakiecie database/sql – dodaje on dodatkowe pole typu “Valid” które wskazuje na to, czy wartość jest typu NULL czy nie.