Вниз
Скачать: CL | DM;

Поиск в базе данных с помощью Locate, SQL или только переборкой?   Найти похожие ветки 

← →
AndreyZAA   (2010-02-18 14:52) [0]

Помогите решить легкую задачку начинающему.
Вопрос: Есть база данных в Accsese, в делфи подключена через ADO.
Пытаюсь искать через Locate «DataModule1.ADOT1.Locate("1",MaskEdit3.Text,[loCaseInsensitive, loPartialKey])», выдает ошибку.
(‘1’ – имя поля в таблице Accsese и соответственно в ADOT1; MaskEdit3.Text – “12-2009” ) ругается на имя поля.
Через SQL :
    ADOFN:= ‘%’+MaskEdit3.Text+’%’; // Пробовал и без знаков процента
    DataModule1.ADOQ1.Active:=false;
    DataModule1.ADOQ1.SQL.Clear;
    DataModule1.ADOQ1.SQL.Add("SELECT *");
    DataModule1.ADOQ1.SQL.Add("From base");
    DataModule1.ADOQ1.SQL.Add("WHERE ( 1 LIKE """+ADOFN+""")");
    DataModule1.ADOQ1.Active:=true;
        Выдает пустую таблицу, хотя значение в базе есть.
Подскажите как можно реализовать поиск не прибегая к тупой переборке, если имя поля в базе данных Accsese (таблице) рано 1.
(Т.е. FieldName =1; KeyFields пустое (но пробовал ставить 1)).
Просто переименовать поле нельзя, по ряду причин. (Основная, базу делал не я и трогать нельзя((((((( )


← →
turbouser ©   (2010-02-18 15:04) [1]

Офигеть...
ну, попробуй единичку в квадратные скобки взять..


← →
AbdreyZAA   (2010-02-18 15:15) [2]

Спасибо в SQL запросе сработало.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.044 c
15-1268688602
Юрий
2010-03-16 00:30
2010.08.27
С днем рождения ! 16 марта 2010 вторник


2-1267779863
Цукор5
2010-03-05 12:04
2010.08.27
ambiguous overloaded call GetFactoryNumber


15-1264657678
vajo
2010-01-28 08:47
2010.08.27
Телефон по витой паре.


15-1265377108
vovko26
2010-02-05 16:38
2010.08.27
С чего начать?


2-1274423388
pro_xaoc
2010-05-21 10:29
2010.08.27
Какой код лучше?




   Наверх