![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как правильно передать переменную в запрос? [D5, Paradox]
Zoloto © (2004-02-10 13:26:00)
Вот до запроса пишу:
var
Price:currency;
begin
Price:=strtofloat(Edit6.text);
...
sql.add(insert into base(Koll,...,Price,...) values (""+Edit4.text+"",,...,Price,...)").
Поле Price таблицы имеет формат N (Number).
SPIRIT (2004-02-10 15:17:00) [1]
золотце ты наше... как мы рады :))
Zoloto (2004-02-10 15:13:00) [2]
Я сейчас переделал тип поля из S в I. Ошибка исчезла.
Но неужели тип Short нельзя перевести в LongInteger этой строкой?
Params[0].AsInteger := strtoint(Edit5.text);
Zoloto (2004-02-10 15:05:00) [3]
Метедом перебора вариантов запроса выяснилось, что ошибка происходит на этой строке:
Params[0].AsInteger := strtoint(Edit5.text); (это :Koll в запросе)
Тип поля в таблице: S.
SPIRIT (2004-02-10 14:51:00) [4]
active:=false;
sql.clear;
sql.add("insert into Vrem.db (Model,Amount,Price,Rate,Valuta) values (:par,:Koll, :Price, :Rate,:val)");
parameters.parabByName("par").value:=edit4.text;
parameters.parabByName("par").value:=?????;
parameters.parabByName("par").value:=????;
parameters.parabByName("par").value:=????;
parameters.parabByName("par").value:=?????;
active:=true;
sniknik (2004-02-10 14:49:00) [5]
Params[].AsCurrency := StrToCurr()
или
Params[].AsFloat:= StrToFloat()
Zoloto (2004-02-10 14:42:00) [6]
Блин, постоянно Type Mismatch in expresion.
active:=false;
sql.clear;
sql.add("insert into Vrem.db (Model,Amount,Price,Rate,Valuta) values (""+Edit4.text+"",:Koll, :Price, :Rate,""+val+"")");
Params[0].AsInteger := strtoint(Edit5.text);
Params[1].AsCurrency := strtofloat(Edit6.text);
Params[2].AsCurrency := strtofloat(Edit7.text);
showmessage(sql.text);
Execsql;
Model - A
Amount - S
Price - N
Rate - N
Не могу понять, в каком месте запроса?
Zoloto (2004-02-10 13:49:00) [7]
В типе N можно хранить десятичные дроби?
Sandman25 (2004-02-10 13:31:00) [8]
sql.add("insert into base(price) values(:price)");
ParamByName("price").AsFloat := Price;