Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно передать переменную в запрос? [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;


Наверх

Титульная страница Поиск, карта сайта Написать письмо