
![]() |
||
Наши проекты: | Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.239.233.139] |
![]() |
|
Сообщ. #1,
|
|
|
Раньше работал с локальной базой access и пользовался фильтром
![]() ![]() form1.ADOTable1.Filtered:=false; form1.ADOTable1.Filter:='smena LIKE ' + #39 + '1'+ #39; form1.ADOTable1.Filtered:=true; в результате я получал отфильтрованную по условию таблицу теперь перехожу на удалённую базу MYSQL на сервере. При выполнении данного кода я получаю НОЛЬ результатов, хотя в таблице есть записи, удовлетворяющие этим условиям. Как с помощью ADOTable отфильтровать записи на удалённой MYSQL? |
Сообщ. #2,
|
|
|
Вот такая строка фильтрует
![]() ![]() form1.ADOTable1.Filter:='(smena LIKE ''' + '1' + '%'')'; ... но фильтрует не как ТОЧНОЕ_СОВПАДЕНИЕ, а как НАЧИНАЕТСЯ_С а мне нужно по точному совпадению. |
![]() |
Сообщ. #3,
|
|
Для точного совпадения используй оператор =._
|
Сообщ. #4,
|
|
|
Забудь про TADOTable и научись пользоваться TADOQuery!
|
Сообщ. #5,
|
|
|
Цитата MIF @ Для точного совпадения используй оператор =._ а можно пример строки, а то не понял где это вставлять |
Сообщ. #6,
|
|
|
Решено.
На стороне БД нужно было заменить тип поля TEXT на TINYTEXT После этого начало нормально фильтровать по полному совпадению |
Сообщ. #7,
|
|
|
Цитата dreyqq @ Оригинальное решение. Судя по названиям типов данных ты поле длинного текста (а короче - BLOB-поле) поменял на строку (VARCHAR). Наверное разработчик БД о таком варианте даже не думал.На стороне БД нужно было заменить тип поля TEXT на TINYTEXT ЗЫ - или разработчик БД - ты сам??? |
Сообщ. #8,
|
|
|
Цитата LMM @ Это база mysql под debian8. Поднимал базу сам. Это через phpmyadmin в настройках типа поля. |