Проверка для неверного строкового значения Mysql: '\ xD9 \ xBE \ xD8 \ xA7 \ xDA \ xA9 - PullRequest
0 голосов
/ 19 мая 2018

Я хочу проверить вводимые пользователем данные, независимо от того, вставляет ли пользователь недопустимый текст или копировать, вставляя недопустимые символы в текстовое поле.

Это исключение обычно возникает, когда пользователь вставляет текст с любого другого языка.

Iхотите регулярное выражение или любой другой метод для проверки ввода пользователя

Ответы [ 2 ]

0 голосов
/ 29 мая 2018

Я нашел решение проблемы, когда я вставлял текст из любого другого языка в тип данных varchar из хранимой процедуры, он выдавал вышеуказанную ошибку, но после того, как я добавил кодировку utf8 с параметром в хранимой процедуре, например

IN spDescription VARCHAR(2048) CHARSET utf8

Тогда исключение будет решено

0 голосов
/ 19 мая 2018

Здесь я сделал несколько обходных путей.

select HEX('你好') REGEXP '^(..)*(E[4-9])' as x
Output

1 - Возвращает 1, поскольку существует китайский символ

select HEX('1234') REGEXP '^(..)*(E[4-9])' as x
Output

0 - Возврат "0", если естьнет символа chiense

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...