Форум: "Базы";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];
ВнизКак организовать SQL запрос для поиска в <BLOB Memo> поле таблицы Найти похожие ветки
← →
Zaero (2005-08-12 10:51) [0]Господа, подскажите пожалуйста, как организовать SQL запрос для обращения к информации в <BLOB memo> - поле таблицы. Т.е. при стандартном синтаксисе:
SELECT * FROM Table WHERE BLOBField = "что-нибудь"
появляется ошибка "Несоответствие типов в выражении".
Если передавать "что-нибудь" в качестве параметра:
Query.SQL.Add("SELECT * FROM Table WHERE BLOBField = :param");
Query.Prepare;
Query.ParamByName("param").AsString:="Что-нибудь";
или
Query.ParamByName("param").AsBlob:="Что-нибудь";
или
Query.ParamByName("param").AsMemo:="Что-нибудь";
- картина аналогичная - "Несоответствие типов в выражении".
В чем проблема?
← →
rayrom © (2005-08-12 11:18) [1]Попробуй вместо := поставить like
← →
ANB © (2005-08-12 11:21) [2]
> rayrom © (12.08.05 11:18) [1]
- от у меня такое предчуствие, что и like не поможет. А поможет (если только это возможно) - Анатолий Подгорецкий, когда придет.
← →
GLFox © (2005-08-12 11:37) [3]А если cast попробовать?
← →
DenK_vrtz © (2005-08-12 11:42) [4]Запрос типа
select * from table where mem like "%" || :par || "%"
где par - параметр строкового типа
← →
Zaero (2005-08-12 12:18) [5]2DenK_vrtz: Спасибо, запрос типа like помог, но только в случае с поиском конкретной фразы. Что делать, если мне надо сделать выборку полей, где memo заполнено?
Вышеописанные запросы:
Query.SQL.Add("SELECT * FROM Table WHERE BLOBField <> :param");
Query.Prepare;
Query.ParamByName("param").AsString:="";
или
Query.ParamByName("param").AsBlob:="";
или
Query.ParamByName("param").AsMemo:="";
выдают все то же несоответствие типов.
← →
Sergey13 © (2005-08-12 12:27) [6]WHERE BLOBField IS NOT NULL
← →
Zaero (2005-08-12 12:28) [7]2DenK_vrtz: Не, неправильно выразился.Надо сделать не выборку полей, а просто - выборку записей, где поле memo заполнено.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.09.25;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.039 c