![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемма вставки данных [D5, Paradox]
Kenzoo © (2004-09-08 14:24:00)if edit1.text<>'' then
begin
sql.add(' insert into "'+Путь+'"(Da) values (:Data) ');
Params[0].asdate:=strtodate(edit1.text);
end
else
begin
sql.add(' insert into "'+Путь+'"(Da) values (:Data) ');
Params[0].Clear;
end;
Если в Edit1 есть дата - вставляет, если нет
то пишет
"Field 'Data' is of an unknown type".
Почему так?
Kenzoo (2004-09-08 16:05:00) [1]Спасибо. Заработало:)
LM2 (2004-09-08 15:40:00) [2]А что мешает так сделать?
sql.add(' insert into "'+Путь+'"(Da1, Da2, Da3) values (');
if edit1.text<>'' then
begin
sql.add(':Da1,');
ParamByName('Da1').asdate:=strtodate(edit1.text);
end
else
sql.add('null,');
if edit2.text<>'' then
begin
sql.add(':Da2,');
ParamByName('Da2').asdate:=strtodate(edit2.text);
end
else
sql.add('null,');
if edit3.text<>'' then
begin
sql.add(':Da3)');
ParamByName('Da3').asdate:=strtodate(edit3.text);
end
else
sql.add('null)');
Kenzoo (2004-09-08 15:16:00) [3]В том дело, что пример упрощён.
Там несколько полей (Edit'ов) с датой
Поэтому и использую параметры.
LM2 (2004-09-08 15:13:00) [4]Напиши так
if edit1.text<>'' then
begin
sql.add(' insert into "'+Путь+'"(Da) values (:Data) ');
Params[0].asdate:=strtodate(edit1.text);
end
else
begin
sql.add(' insert into "'+Путь+'"(Da) values (null) ');
end;
Kenzoo (2004-09-08 15:08:00) [5]Блин, только на этом застопорился:(
Kenzoo (2004-09-08 14:40:00) [6]sql.add(' insert into "'+d+'"(Da) values (:par) ');
Params[0].Clear;
Params[0].Bound:=true;
то же самое получаю.
MU (2004-09-08 14:32:00) [7]However, if the Clear method is used to bind the parameter to a NULL value, Bound must be separately set to True.