![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADO: TParameters.CreateParameter [D5, MSSQL]
nikolo © (2002-11-19 18:27:00)У компонента TADOStoredProcесть метод добавления параметров:
function CreateParameter(const Name: WideString; DataType: TDataType; Direction: TParameterDirection; Size: Integer; Value: OleVariant): TParameter;
Вопрос у меня о параметре Size, в help сказано:
Size is an Integer value indicating the maximum size of the parameter’s value.
Не понятно, что это значит. Я что должен точно знать какое максимальное значение должен иметь каждый параметр? Если у меня это поле ID, где миллионы записей, то на указывать какое-то страшно большое число? Или я чего-то не понял?
Разъясните, друзья, пожалуйста...
sniknik (2002-11-19 19:18:00) [1]ftAutoInc пожалуй лишнее будет.
sniknik (2002-11-19 19:17:00) [2]nikolo © (19.11.02 19:05)
> А про Size узнал, что он значим только для строк.
ftBCD, ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary
не будем все переписывать, так кусочек вырезал. :-)
nikolo (2002-11-19 19:05:00) [3]Спасибо всем, действительно лучше использовать ADOStoredProc.Parameters.Refresh.
А про Size узнал, что он значим только для строк.
Андрей Прокофьев (2002-11-19 18:55:00) [4]Для SP легче и надежнее сделать
ADOStoredProc.Parameters.Refresh для заполнения коллекции параметров реальными параметрами из процедуры
sniknik (2002-11-19 18:52:00) [5]максимальный размер значения (нужен если размер переменный/может быть разной длинны для ftWideString к примеру)
работает
ADOCommand1.CommandText:=
"INSERT INTO FlagIn (CashNumber, ZNumber, SDate) VALUES ("+sCash+","+sNum+",?)";
ADOCommand1.Parameters.CreateParameter("Dat", ftDateTime, pdInput, 0, mDat);
ADOCommand1.Execute;
(ADOCommand1.ParamCheck должен быть false)