![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
помогите!!!!!!!!!
регинка © (2006-12-20 11:53:00)Удалено модератором
Примечание: СПАМ
Desdechado (2006-12-20 13:55:00) [1]> FROM ADOQuery1 что ли?
а справку по SQL почитать?
регинка (2006-12-20 13:47:00) [2]
> INSERT INTO ... SELECT ... FROM ...
а как мне сделать чтоб туда заносились данные из запроса
FROM ADOQuery1 что ли?
sniknik (2006-12-20 12:20:00) [3]VitV © (20.12.06 12:08) [4]
IBDataSet(r[x]). ParamByName('f10'). AsStringтипизированного ввода значения параметра в ADO нет, вместо этого вариантное значение Value принимает тот тип который вносят (т.е. от значения типа с другой стороны присвоения), но только если он неопределен до этого (как в вопросе), если тип параметра задан то будет попытка преобразовать к нему.
т.е. не совсем уместно показывать код с IB... очень большие различия в использовании.
VitV (2006-12-20 12:08:00) [4]var
x: integer;
r: array of tobject;
i: integer;
begin
setlength(r, 0);
i := 0;
for x := 0 to DataModule10.ComponentCount - 1 do
if DataModule10.Components[x] is TIBDataSet then begin
inc(i);
setlength(r, i);
r[i - 1] := DataModule10.Components[x];
end;
for x := 32 to 42 do
begin
if sCheckBox2.Checked=false then
TIBDataSet(r[x]).ParamByName('f1').AsString:='%'
else
TIBDataSet(r[x]).ParamByName('f1').AsString:=sDBLookupComboBox2.Text;
if sCheckBox3.Checked=false then
TIBDataSet(r[x]).ParamByName('f2').AsString:='%'
else
TIBDataSet(r[x]).ParamByName('f2').AsString:=sDBLookupComboBox3.Text;
if sCheckBox4.Checked=false then
TIBDataSet(r[x]).ParamByName('f3').AsString:='%'
else
TIBDataSet(r[x]).ParamByName('f3').AsString:=sDBLookupComboBox4.Text;
if sCheckBox5.Checked=false then
TIBDataSet(r[x]).ParamByName('f4').AsString:='%'
else
TIBDataSet(r[x]).ParamByName('f4').AsString:=sEdit2.Text;
if sDateEdit1.Enabled=false then
TIBDataSet(r[x]).ParamByName('f6').AsDate:=(strtodate('01.01.1901'))
else
TIBDataSet(r[x]).ParamByName('f6').AsDate:=sDateEdit1.Date;
if sDateEdit2.Enabled=false then
TIBDataSet(r[x]).ParamByName('f7').AsDate:=(strtodate('01.01.2502'))
else
TIBDataSet(r[x]).ParamByName('f7').AsDate:=sDateEdit2.Date;
if sCheckBox9.Checked=false then
TIBDataSet(r[x]).ParamByName('f9').AsString:='%'
else
TIBDataSet(r[x]).ParamByName('f9').AsString:=sDBLookupComboBox5.Text;
if sCheckBox10.Checked=false then
TIBDataSet(r[x]).ParamByName('f10').AsString:='%'
else
TIBDataSet(r[x]).ParamByName('f10').AsString:=sDBLookupComboBox6.Text;
TIBDataSet(r[x]).Close;
TIBDataSet(r[x]).Open;
sniknik (2006-12-20 12:00:00) [5]замени ADOQuery4 на ADOCommand4, ADOQuery1 на ADODataSet1, а ADOQuery1.Fields[0]. Value; на ADODataSet1.Fields[0]. AsInteger;
либо, предварительно, перед внесением значения в параметр устанавливай ему тип.
Desdechado (2006-12-20 11:59:00) [6]1. вообще-то есть классный синтаксис для "занести данные полученные запросом в таблицу": INSERT INTO ... SELECT ... FROM ...
2. что за странное имя поля ibank2.payment.KPP в списке полей INSERT ?
Ega23 (2006-12-20 11:56:00) [7]Классно!
Такие вещи с утра надо постить.