Переменные в Go при вызове db.Exec

121
15 февраля 2021, 21:30

Когда я использую конструкции вида:

result, err := db.Exec("CREATE...")

result остается невостребованным. Следовательно, ругань от Go. Пришлось использовать такое вот:

_ = result

Костыльно. Конструкции вида:

_, err := db.Exec("CREATE...")

Выбивают ошибку:

no new variables on left side of :=

При этом, при использовании подобной конструкции, скажем, с if - все работает:

if _, ok := err.(*url.Error); !ok

Как реализовать это без костылей?

Answer 1

:= следует использовать только когда у вас новые переменные. В данном случае компилятор вам говорит, что выше вы уже объявили err, так что вы должны писать:

_, err = db.Exec(query)
READ ALSO
Как удалить все триггеры из таблицы?

Как удалить все триггеры из таблицы?

Нужно сделать процедуру, которая будет удалять триггерыВариант 1

114
Как установить MySQL 8.0 (8.0.15+) на Ubuntu 18.04 [так же для DigitalOcean]

Как установить MySQL 8.0 (8.0.15+) на Ubuntu 18.04 [так же для DigitalOcean]

У меня возникла проблема: Который раз пытаюсь установить MySQL на Ububtu-server (1804) и постоянно какие-то ошибки

101