2013-09-04 2 views
2

В моем одном поле данных есть специальный символ. Мне нужно знать, что это. Я знаю, что это не пространство.Специальный символ не отображается в базе данных

Запрос выбора возвращает akasa и akasa. В определенном первичном столбце есть две одинаковые записи.

Select userid from users where userid like 'akasa%'. 

При использовании функции len в запросе оно показывает длину как 5 и 7. Это означает, что это разные значения.

, когда я использую команду

Select userid from users where userid='akasa '. 

Это ничего, что означает, что нет места не показывать.

Итак, я понял, что есть 2 специальных символа, которые не видны, и мне нужно знать, что это такое? Что я могу использовать для их обнаружения?

+0

Как вы выполняете эти запросы? Проблема, вероятно, заключается в том, какой графический интерфейс вы смотрите на результаты. –

ответ

0

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

... where userid like 'akasa%' and userid <> 'akasa' 

Например, чтобы удалить его, просто использовать delete с этим пунктом.

В качестве альтернативы, если вы сделать нужно знать, что именно они, пишет немного Java/JDBC или C#/ODBC программу, чтобы получить строку, используя что where положения, и вы должны быть в состоянии распечатать реальное значение столбца в любой форме, такой как шестнадцатеричное представление.

+0

Спасибо! Да, я могу просто удалить его. Но, просто из любопытства, я спрашивал, как его обнаружить. – user2677679

3

Для проверки отдельных символов, вы можете использовать ASCII:

Возвращает значение ASCII-код крайнего левого символа из символьного выражения.

и SUBSTRING:

Возвращает часть символа, двоичный, текст или выражение изображения

Э.Г.

SELECT ASCII(SUBSTRING(userid,6,1)) 

скажет вам, что такое 6-й символ.

Если бы я должен был догадаться, хотя, я предполагаю, что вы найдете возврата каретки и перевода строки (ASCII значения 13, 10)

Вот ascii table для справки.

+0

Спасибо. Я нашел 32 и 13 значений в первом и 32 и 32 во втором. 32 представляет – user2677679

Смежные вопросы