Форум: "Базы";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];
ВнизПараметры в запросе не работают. Найти похожие ветки
← →
Леха (2004-10-06 09:55) [0]Form1.ADOQuery1.SQL.Clear;
Form1.ADOQuery1.SQL.Add("update Kods set Gorod=:Gorod where Gorod=:Gorods");
Form1.ADOQuery1.Parameters.Items[0].Value := Form2.Edit1.Text;
Form1.ADOQuery1.Parameters.Items[3].Value := Form2.Edit4.Text;
Form1.ADOQuery1.ExecSQL;
Kods - таблица
Gorod - поле
Gorod - параметр 0, Gorods - параметр 3.
Пишет вот такую ошибку. Что не так?
with message "List index out of bonus (3)" Process stoped
Без Gorods, если значение тупо запивать работает.
← →
Nikolay M. © (2004-10-06 09:56) [1]
> Gorods - параметр 3.
Откуда такая уверенность?
> Что не так?
очевидно:
> "List index out of bonus (3)"
← →
Леха (2004-10-06 10:01) [2]В Объект Инспекторе смотрю TParametrs[3]
Внизу значение Gorods
← →
Nikolay M. © (2004-10-06 10:08) [3]Не туда смотришь. Или не тогда.
← →
Johnmen © (2004-10-06 10:08) [4]
Form1.ADOQuery1.Parameters.ParamByName("Gorod").Value:=...
...
← →
Леха (2004-10-06 10:12) [5]Спасибо всем. Особенно Johnmen. Код помог. Если не трудно, а как обратно можно узнать номер параметра, если знаешь его имя.
Ведь точно он в списке 4. Начинается нумер. с 0. Значит он 3.
Я так думал...
← →
DenK_vrtz © (2004-10-06 10:19) [6]>Ведь точно он в списке 4. Начинается нумер. с 0. Значит он 3.
а из этого
("update Kods set Gorod=:Gorod where Gorod=:Gorods");
видно, что параметров только ДВА! :)
← →
Леха (2004-10-06 10:23) [7]Нет. Просто остальные еще не используются.
← →
Johnmen © (2004-10-06 10:28) [8]Параметры в коллекции параметров появляются только когда происходит определение свойства SQL.
SQL.Clear соответственно приводит к чистке коллекции.
К параметрам желательно всегда обращаться по имени.
← →
Леха (2004-10-06 10:30) [9]Понял. Спасибо всем.
Огромное спасибо - Johnmen.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.031 c