Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.07;
Скачать: CL | DM;

Вниз

Что неправильно в запросе?   Найти похожие ветки 

 
dera   (2006-04-14 18:44) [0]

Query1.ParamByName("_initcost").AsFloat:=strtofloat(Edit1.Text);
Query1.Close;
Query1.SQL.Text:="INSERT INTO inom(id,initcost) VALUES ("+Edit2.Text+", "+:_initcost+")";
Query1.ExecSQL;


 
Desdechado ©   (2006-04-14 18:49) [1]

1. параметры присваивают ПОСЛЕ указания текста запроса, т.к. при указании текста список параметров автоматически перестраивается
2. параметр должен быть вписан в текст запроса, а не плюсоваться как строка
Query1.SQL.Text:="INSERT INTO inom(initcost) VALUES (:_initcost)";


 
dera   (2006-04-14 18:55) [2]

>2. параметр должен быть вписан в текст запроса, а не плюсоваться как строка
получается, нельзя использовать в одном запросе и с параметрами и без? Т.е. надо писать так?
Query1.Close;
Query1.SQL.Text:="INSERT INTO inom(id,initcost) VALUES (:id,:_initcost)";
Query1.ParamByName("_initcost").AsFloat:=strtofloat(Edit1.Text);
Query1.ParamByName("_id").AsFloat:=strtofloat(Edit2.Text);
Query1.ExecSQL;


 
ЮЮ ©   (2006-04-17 03:59) [3]


> получается, нельзя использовать в одном запросе и с параметрами
> и без?


Можно, но > параметр должен быть вписан в текст запроса

Query1.SQL.Text:=
 "INSERT INTO inom(id,initcost) VALUES (" + Edit2.Text+ ", :_initcost)";
а у тебяQuery1.SQL.Text:="INSERT INTO inom(id,initcost) VALUES ("+Edit2.Text+", "+:_initcost+")";

Такое даже компиляцию не пройдет.


> Т.е. надо писать так?

Так гораздо лучше.



Страницы: 1 вся ветка

Текущий архив: 2006.05.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.049 c
3-1142329116
hursand
2006-03-14 12:38
2006.05.07
текcтавом формате


15-1144844444
tria
2006-04-12 16:20
2006.05.07
Мультиязычность приложения


2-1145541105
Никола
2006-04-20 17:51
2006.05.07
QuickReport


15-1144924794
Rentgen
2006-04-13 14:39
2006.05.07
Глюк на Мастере или Потеряный вопрос :)


4-1139720990
ArchValentin
2006-02-12 08:09
2006.05.07
Проверка процессов