![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Опять ADO [D6, MSAccess]
nomshar © (2002-09-24 23:50:00)Здравствуйте. Этот вопрос в принципе уже звучал, но ошибка все еще происходит. Так вот, я повторюсь. Есть следующий код:
ADOQuery1.Close;
ADOQuery1.SQL.Text:= "Select Item_id from MainTabl";
ADOQuery1.Open;
При открытии ADOQuery1 происходит ошибка EListError и вызывается исключение со следующим сообщением: "List index out of bounds(1)".
Я перепробывал, как мне кажется, практически все: создавала TADOQuery динамически, использовал специально динамически созданный TStringList и присваивал его свойству значение dupAccept; использовал присвоения вида ADOQuery1.SQL.Text:= ..., ADOQuery1.SQL.Assign(Memo1.Lines), ADOQuery1.ADD("бла бла бла"), и т.д., и т.п. Но во всех случаях вылетает именно эта ошибка. Исключение вызывается именно при открытии ADOQuery1.
ЮЮ (2002-09-25 02:42:00) [1]Попробуй выбрать два поля, например
ADOQuery1.SQL.Text:= "Select * from MainTabl";
Если ошибка "List index out of bounds( 1) исчезнет, значит где-то в коде есть обращение типа ADOQuery1.Fields[1].
Также посмотри ADOQuery1.parameters[1].
На худой конец, можно протрассировать всё, что происходит по ADOQuery1.Open и локализовать ошибку
wicked (2002-09-24 23:59:00) [2]хмм... а есть поле Item_Id в табличке MainTbl?....
у меня вылетала такая ошибка, когда такого поля не было, или когда были созданы persistent-поля, для которых не было реальных полей данных в запросе....