![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как работать с параметрами в TADOQuery? [D6, MSSQL]
AndrewK © (2003-09-12 12:50:00)
Доброго времени суток.
Подскажите, пожалуйста, как правильно работать с параметрами в TADOQuery.
Задача такая: Нужно динамически создать запрос к базе данных, например
spGetList :Param0, :Param1, :Param2
Количество параметров известно, но не постоянно
Мне необходимо сделать универсальную процедуру для получения данных с помощью хранимых процедур.
Составляю запрос:
Query.SQL.Text := spGetList :Param0, :Param1, :Param2
Подставляю поля:
for I := 0 to 3 do begin
Query.Parameters.ParamByName(":Param"+IntToStr(I)).Value := I;
end;
Открываю:
Query.Open;
Вываливается сообщение:
Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.
Что можно сделать.
Использую TADOQuery, MS SQL Server 2000, Delphi 6
handra (2003-09-12 15:13:00) [1]
Parameters.Refresh ? (для TADOStoredProc)
AndrewK (2003-09-12 13:04:00) [2]
2Nikolay M.: Не удается передать через SQL большие запросы, например текст символов на 1000.
2Hooch: Спасибо. Пробую.
AndrewK (2003-09-12 12:56:00) [3]
2Nikky: Остроумно
Hooch (2003-09-12 12:55:00) [4]
Query.Parameters.ParseSql("spGet....",true);
НО ! Лучше вмсето adoQuery использовать adoDataSet
adoDataSet.Commanttext = SQL при этом он сам автоматом разберёт параметры и выставит их типы
Nikolay M. (2003-09-12 12:55:00) [5]
А зачем в таком случае возиться с параметрами?
Что мешает формировать строку типа "spGetList "1", "2", "3"" руками?
Nikky (2003-09-12 12:52:00) [6]
> AndrewK © (12.09.03 12:50)
> Что можно сделать.
не ставить перед собой таких задач?