Не удается получить из MySQL 8 значение ячейки

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 521
Благодарностей
1 318
Баллы
113
Доброго времени. Может кто сталкивался? Установил MySQL 8 , (Zenno 7.7.1) кодировки по умолчанию поставил utf8mb3_general_ci , так как старая версия utf8_general_ci уже не доступна в ней. Все установилось нормально, загрузил базу успешно в нее. Кодировка нужной ячейки в таблице utf8mb3_general_ci - тип данных varchar. При получении строки через C# SELECT `UA` FROM `iphone` WHERE `id` = '11876' LIMIT 1; - получаю пустоту, хотя string db_charset = "utf8mb3"; установлен. Самое интересное, через Heidi_SQL проблем нет по получению данных. И на C# если вместо UA, запросить id - все получается корректно. Как так?

Подключение через:
C#:
public DB(string db_hostname, string db_username, string db_password, string db_database, string db_charset)
        {
            hostname = db_hostname;
            username = db_username;
            password = db_password;
            database = db_database;
            charset = db_charset;
            result = String.Empty;
            string db_port = "3306";

            var m = db_hostname.Split(':');
            if (m.Length == 2)
            {
                db_hostname = m[0];
                db_port = m[1];
            }

            var connectionString = "server=" + db_hostname + ";user=" + db_username + ";database=" + db_database + ";port=" + db_port + ";password=" + db_password + ";pooling=false;" + "charset=" + charset + ";";
            conn = new MySqlConnection(connectionString);

            open();
        }
Соответственно коннект:
C#:
// коннект к MySQL и открытие сессии
    DB db = new DB(db_host, db_user, db_pswd, db_database, db_charset);

Получается Зенно по умолчанию подсовывает старую версию MySQLdata.dll без поддержки MySQL8 и нужно только самому искать новую dll с поддержкой MySQL 8, которая в свою очередь подойдет Zenno?
 
Последнее редактирование:

Wide

Client
Регистрация
04.02.2013
Сообщения
945
Благодарностей
257
Баллы
63

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 521
Благодарностей
1 318
Баллы
113

marushin

Client
Регистрация
12.01.2015
Сообщения
193
Благодарностей
60
Баллы
28
может бред, но попробуй убрать кавычки , чтоб так было WHERE `id` = 11876
у id тип данных числовой типо INT обычно, а у тебя в запросе он экранируется как текстовый
 
Последнее редактирование:

Wide

Client
Регистрация
04.02.2013
Сообщения
945
Благодарностей
257
Баллы
63
может бред, но попробуй убрать кавычки , чтоб так было WHERE `id` = 11876
у id тип данных числовой типо INT обычно, а у тебя в запросе он экранируется как текстовый
разницы нет, у человека проблема с версией бд..
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 521
Благодарностей
1 318
Баллы
113
разницы нет, у человека проблема с версией бд..
Нашел один вариант, может кому приходится, если таблица только на англ символах без спец символов, тогда сменить кодировку с utf8mb3\4 на windows-1251
101092
Таким образом, если меняем кодировку на cp1252 - зенно может корректно получить из таблицы данные. Но это уже костыли. Я плюнул и поставил MySQL 5.6 :D
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)