Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.046 c
15-1144853043
kilonet
2006-04-12 18:44
2006.05.07
Книга по клиент - серверным БД.


5-1130836925
Priest
2005-11-01 12:22
2006.05.07
Оповещение об изменении свойства


2-1145008141
Anna
2006-04-14 13:49
2006.05.07
Как в Delphi отобразить html файл


15-1144907952
elfebet
2006-04-13 09:59
2006.05.07
Программа для работы с этими форумами


3-1142223627
anubis
2006-03-13 07:20
2006.05.07
Работа БД Парадокс с Екселем




   Наверх