SQL не может искать - PullRequest
       3

SQL не может искать

0 голосов
/ 27 ноября 2011

В моей таблице SQL Image, когда я выполняю поисковый запрос

SELECT * FROM Image WHERE platename LIKE 'WDD 666'

, он не возвращает результата (используя другой столбец для поиска, тогда нет проблем).

Вседанные столбца были вставлены кодом C #.(Если ввод данных вручную, поиск работает.) SQL
теперь я подозреваю, что слова WDD 666 не были английским алфавитом.возможно ли это?

В c # номер пластины был сгенерирован с помощью оболочки tesseract string type.

что мне сделать, чтобы найти номер пластины?

Спасибо зазаранее и извините за мой плохой английский.

Ответы [ 2 ]

2 голосов
/ 27 ноября 2011

Поскольку ваш случай совпадает, я исключу чувствительность к регистру.

Могут быть пробелы в начале или в конце - Попробуйте это ..

SELECT * FROM Image WHERE platename LIKE '%WDD 666%'

1 голос
/ 27 ноября 2011

Попробуйте выполнить эту команду:

SELECT '*'+plateName+'*',len(plateName)
FROM image.

Я подозреваю, что в поле platename есть несколько непечатаемых символов.

Похоже, что это CR / LF в конце данных. Вы можете использовать

UPDATE image SET plateName = replace(plateName,char(13)+char(10),'') 
WHERE plateName like '%'+char(13)+char(10)+'%'

Если вы получите положительное число строк, вы будете знать, что были данные CR / LF, и они были удалены. Если вы выполните выбор после этого, ваши длины должны быть 7 и 8 на основе ваших выборочных данных

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