powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Ошибка при выполнении ХП на сервере
8 сообщений из 8, страница 1 из 1
Ошибка при выполнении ХП на сервере
    #38826294
Zhekius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть хранимая процедура с параметрами на сервере.
При заполнении одного из параметров русскими символами (который, естественно, ссылается на столбец с заполненными русскими символами, другими словами, делает выборку) исполнение процедуры выдает ошибку:
Incorrect string value: '\xD1\x8B....' for column at row 1 и название параметра.
При условии заполнения латинскими буквами - всё ок.
Тип запрашиваемого столбца VarChar (255). Кодировка БД по умолчанию UTF(8)

Что исправить в кодировке? И какую задать по умолчанию на БД?
...
Рейтинг: 0 / 0
Ошибка при выполнении ХП на сервере
    #38826420
Zhekius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
добалю:
ошибка идет по входному параметру ТИП varchar(255)
Изменил тип параметра на varbinary(255) - запрос исполняется без ошибок, но результат нулевой, т.е. в тестовом режиме я задаю значение параметра заранее известное и которое возвращать должно не нулевое значение. Возвращается нулевое значение.

Убрал параметр, сделал константой (символы так же - русские), исполнил процедуру - значение вернулось не нулевое.
Очевидно - проблемы кодировки.
Вопрос: Где ошибка кодировки? в ХП? или в Базе данных.
...
Рейтинг: 0 / 0
Ошибка при выполнении ХП на сервере
    #38826457
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZhekiusПри заполнении одного из параметров русскими символами (который, естественно, ссылается на столбец с заполненными русскими символами, другими словами, делает выборку) исполнение процедуры выдает ошибку:
Incorrect string value: '\xD1\x8B....' for column at row 1 и название параметра.Кодировка реально передаваемой строки явно однобайтовая, т.е. не UTF8.
...
Рейтинг: 0 / 0
Ошибка при выполнении ХП на сервере
    #38826482
Zhekius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как быть?
Изменить кодировку БД?
...
Рейтинг: 0 / 0
Ошибка при выполнении ХП на сервере
    #38826511
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZhekiusКак быть?Передавать строку в кодировке UTF8.
Эта строка откуда происходит?
...
Рейтинг: 0 / 0
Ошибка при выполнении ХП на сервере
    #38828102
Zhekius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторПередавать строку в кодировке UTF8.
Эта строка откуда происходит?
DBForge Studio for My SQL
В разделе процедур. Запуск и отлатка оттуда же.
Параллельно работа и отладка приложения в ADO средствами Delphi через драйвер MyODBC. Проблема одинакова и в менеджере баз данных и в Delphi
...
Рейтинг: 0 / 0
Ошибка при выполнении ХП на сервере
    #38828169
Zhekius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft: спасибо, на нужные мысли направляешь )
Зри в корень, как говорится.
В общем, решил включить режим отладки. Поглядел, что вместо значения ХЛЕБ в переменной лежит ???? (ну или какие-то такие значки).
Почитал статейку Глава 10_ Поддержка наборов символов MySQL.mht (...блин, локально сохранилась, найдете если что)
и после присвоения значения в переменную написал значение COLLATE utf8_unicode_ci, т.е. кусок кода цитирую из хранимой процедуры:

..................
SELECT Field1, Field2 FROM Table1
WHERE Field2 = ParamIN COLLATE utf8_unicode_ci
INTO ParamOUT

Переменную ParamIN оставил как VarChar.
Вот.
Что здесь еще можно исправить?
...
Рейтинг: 0 / 0
Ошибка при выполнении ХП на сервере
    #38828172
Zhekius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всмысле, заработало все это творение как положено ))
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Ошибка при выполнении ХП на сервере
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]