Size: a a a

2020 April 08

SB

Stepan Bezhuk in Go-go!
Владимир Столяров
тогда бы на типы ругалось
+
источник

МП

Мимо Проходящий... in Go-go!
Stepan Bezhuk
Всем привет, есть такой запрос
result, err := db.Query("SELECT ui.id, ui.name, ui.phone, ui.email, ui.city, ub.bonus, " +
"ub.travel FROM user_info AS ui LEFT JOIN user_bonus AS ub ON ui.id = ub.id WHERE ui.phone = ?", phone)

в консоли mysql находит одну запысь а вот golang не находит, в чем проблема
вопрос не ясен. где объявлена phone? ещё нужна схема таблиц user_info и user_bonus - как они создаются в CRATE TEBLE
источник

SB

Stepan Bezhuk in Go-go!
Мимо Проходящий
вопрос не ясен. где объявлена phone? ещё нужна схема таблиц user_info и user_bonus - как они создаются в CRATE TEBLE
1мин
источник

МП

Мимо Проходящий... in Go-go!
Stepan Bezhuk
SELECT ui.id, ui.name, ui.phone, ui.email, ui.city, ub.bonus, " +
"ub.travel FROM user_info AS ui LEFT JOIN user_bonus AS ub ON ui.id = ub.id WHERE ui.phone = +389999999


Вот так получаетса, но пробую сделать вот так

result, err := db.Query("SELECT ui.id, ui.name, ui.phone, ui.email, ui.city, ub.bonus, " +
"ub.travel FROM user_info AS ui LEFT JOIN user_bonus AS ub ON ui.id = ub.id WHERE ui.phone = '?' ", phone)


тоисть беру в кавычки знак bind ? и оно тоже не работает
если '?', то будет же искать записи в которых phone == '?', а параметр phone будет проигнорирован насколько я понимаю
источник

SB

Stepan Bezhuk in Go-go!
Мимо Проходящий
вопрос не ясен. где объявлена phone? ещё нужна схема таблиц user_info и user_bonus - как они создаются в CRATE TEBLE
источник

SB

Stepan Bezhuk in Go-go!
Мимо Проходящий
если '?', то будет же искать записи в которых phone == '?', а параметр phone будет проигнорирован насколько я понимаю
Понял
источник

SB

Stepan Bezhuk in Go-go!
источник

МП

Мимо Проходящий... in Go-go!
Если у вас phone имеет тип строки, то всё должно работать корректно если ? без кавычек. Либо какая то ерунда с кодировкой строк в бд
источник

SB

Stepan Bezhuk in Go-go!
Мимо Проходящий
Если у вас phone имеет тип строки, то всё должно работать корректно если ? без кавычек. Либо какая то ерунда с кодировкой строк в бд
Скорей всего склоняюсь к кодировке
источник

SB

Stepan Bezhuk in Go-go!
Так как через консоль sql данный запрос работает
источник

МП

Мимо Проходящий... in Go-go!
Если у вас бд urf16, то нужно конвертить строку phone в utf16
источник

МП

Мимо Проходящий... in Go-go!
Либо бд в ansii с кодовой страницей, а phone содержит не-ansii байты - то же самое
источник

IK

Ilya Kaznacheev in Go-go!
Stepan Bezhuk
Всем привет, есть такой запрос
result, err := db.Query("SELECT ui.id, ui.name, ui.phone, ui.email, ui.city, ub.bonus, " +
"ub.travel FROM user_info AS ui LEFT JOIN user_bonus AS ub ON ui.id = ub.id WHERE ui.phone = ?", phone)

в консоли mysql находит одну запысь а вот golang не находит, в чем проблема
Зайди в дебаггер и посмотри, какой в итоге запрос идёт на бд
источник

IK

Ilya Kaznacheev in Go-go!
И сравни с консолью
источник

IK

Ilya Kaznacheev in Go-go!
Скорее всего тип скастить нужно
источник

SB

Stepan Bezhuk in Go-go!
Спасибо всем, заработало, проблема была с кодировкой
источник

p

pragus in Go-go!
А вот расскажите про нейминг интерфейсов. Канонично ими описывать поведение объектов, все эти Reader, Writer, итп. Но в go tour использование интерфейсов показывают на примере площади треугольника/прямоугольника. И вот тут вопросов 2:

1) с каким пор площадь стала поведением объекта?
2) как такой интерфейс назвать?
источник

AS

Andrei 🦉 Sergeev in Go-go!
pragus
А вот расскажите про нейминг интерфейсов. Канонично ими описывать поведение объектов, все эти Reader, Writer, итп. Но в go tour использование интерфейсов показывают на примере площади треугольника/прямоугольника. И вот тут вопросов 2:

1) с каким пор площадь стала поведением объекта?
2) как такой интерфейс назвать?
это наследние ООП бекграунда автора, который писал этот кусок го тур
источник

p

pragus in Go-go!
источник

AS

Andrei 🦉 Sergeev in Go-go!
тем более
источник