![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Field Not Found
Krants © (2007-08-28 17:00:00)Помогите разобраться с непонятной ошибкой, имеется поключение к базе(access) через пал-ру ADO, два связанных ADOQuery через TDataSource:
DS_Look.DataSet:=QueryLook;
QueryEdit.DataSource:=DS_Look;
при первичном запуске кода:
QueryLook.Close;
QueryEdit.Close;
QueryLook.SQL.Clear;
QueryLook.SQL.Add('Select id, '+field);
QueryLook.SQL.Add('From table');
QueryLook.Open;
QueryEdit.SQL.Clear;
QueryEdit.SQL.Add('select id, MyField from table Where id>=:id');
QueryEdit.SQL.Add('AND '+field+'=:'+field);
QueryEdit.Open;
при заранее заданномfield:='field1';
выполняется все великолепно!
но при вторичном запуске и измененным значениемfield:='field2';
происходит ошибка типа: "QueryLook: field 'field1' not found"
подскажите плз в чем может заключаться ошибка и как ее можно устранить?
Krants (2007-08-29 10:42:00) [41]
> Reindeer Moss Eater © (29.08.07 10:36) [8]
выше приведенный код, это минимальный код при котором возн. ошибка, и никаких других операций ни в дезигне ни в рантайме с его обьектами не осуществляется!
Reindeer Moss Eater (2007-08-29 10:36:00) [42]Либо у тебя ранее был создан экземпляр поля field1.
Смотри редактор полей своего QueryLook
Reindeer Moss Eater (2007-08-29 10:34:00) [43]по запросу и так все видно, см. [0]
Все видно говоришь?
Ну тогда остается поверить в то, что текст правильного запроса перед открытием меняют невидимые зеленые человечки которые поселились в твоем компе.
Krants (2007-08-29 10:30:00) [44]
> Reindeer Moss Eater © (28.08.07 17:18) [5]
по запросу и так все видно, см. [0]
единственным, пока найденным, логичным решением является:
QueryDupl.Destroy;
QueryDupl:=TADOQuery.Create(self);
QueryDupl.Connection:=ADOConnection;
но если кто знает более конструктивное решение, прошу поделиться...
Reindeer Moss Eater (2007-08-28 17:18:00) [45]Точнее ShowMessage(QueryLook.SQL.Text)
Reindeer Moss Eater (2007-08-28 17:16:00) [46]ShowMessage(QueryEdit.SQL.Text) как всегда поставит все точки над i
Krants (2007-08-28 17:14:00) [47]
> clickmaker © (28.08.07 17:10) [1]
больше эти компоненты нисчем не связаны
> sniknik © (28.08.07 17:11) [2]
QueryLook.Close - это для наглядности кода, а так все закрывается и откр. в р-тайме.
sniknik (2007-08-28 17:11:00) [48]в режиме разработки коннект закрой перед компиляцией/запуском, тогда и
> при первичном запуске кода:
> QueryLook.Close;
> QueryEdit.Close;
не надо будет делать, и заранее заданные field мешать не будут.
clickmaker (2007-08-28 17:10:00) [49]значит, кто-то просит именно field1