表一数据插入表二。解决方法
表一数据插入表二。
QUERY1.SQL.Clear;
QUERY1.SQL.Add('delete from ic_t_inout_store_detail5');
QUERY1.SQL.Add('delete from pos_t_daysum5');
QUERY1.SQL.Add('select bi_t_item_info.item_no as 商品编号,bi_t_item_info.item_name as 商品名称,sum(ic_t_inout_store_detail.in_qty) as 采购数量,bi_t_item_cls.ITEM_CLSNO as 类别编号,bi_t_item_cls.ITEM_CLSNAME AS 商品类别,ic_t_inout_store_detail,bi_t_item_info,bi_t_item_cls');
QUERY1.SQL.Add('where ic_t_inout_store_detail.sheet_no like ''%PI%''and bi_t_item_info.item_no=ic_t_inout_store_detail.item_no and bi_t_item_cls.ITEM_CLSNO=bi_t_item_info.ITEM_CLSNO');
query1.SQL.Add('and ic_t_inout_store_detail.sheet_no in (select ic_t_inout_store_master.sheet_no from ic_t_inout_store_master where ic_t_inout_store_master.pay_date>=datetimepicker1.text and ic_t_inout_store_master.pay_date<=datetimepicker2.text');
query1.SQL.Add('and bi_t_branch_info.branch_no=edit4.text');
QUERY1.SQL.Add('AND bi_t_item_cls.ITEM_CLSNO=EDIT5.TEXT');
QUERY1.SQL.ADD('group by ic_t_inout_store_detail.item_no, bi_t_item_info.item_no,bi_t_item_info.item_name,bi_t_item_cls.ITEM_CLSNO,bi_t_item_cls.ITEM_CLSNAME ');
QUERY1.Open;
while not query1.eof do
begin
query2.Close;
query2.SQL.Clear;
QUERY2.SQL.text:='insert into ic_t_inout_store_detail5(商品编号,商品名称,采购数量,类别编号,商品类别)';
query2.Open;
query2.Parameters.paramvaluses['商品编号']:=query1.fieldbyname('商品编号').astnteger;
ADOQuery2.ExecSQL;
end
求助以上语句怎么写才正确
------解决方案--------------------
QUERY2.SQL.text:= "insert into ic_t_inout_store_detail5(商品编号,商品名称,采购数量,类别编号,商品类别) ";
query2.Open;
query2.Parameters.paramvaluses[ " "]:=query1.fieldbyname( "商品编号 ").astnteger;
ADOQuery2.ExecSQL;
1.insert 语句语法不对
2.insert语句中没有“商品编号”这个参数,无需赋值
3、insert语句要用execsql,open应去掉
------解决方案--------------------
你把哪个
query1.open;
query2.Close;
query2.SQL.Clear;
END; ----放到结尾部分
QUERY1.SQL.Clear;
QUERY1.SQL.Add('delete from ic_t_inout_store_detail5');
QUERY1.SQL.Add('delete from pos_t_daysum5');
QUERY1.SQL.Add('select bi_t_item_info.item_no as 商品编号,bi_t_item_info.item_name as 商品名称,sum(ic_t_inout_store_detail.in_qty) as 采购数量,bi_t_item_cls.ITEM_CLSNO as 类别编号,bi_t_item_cls.ITEM_CLSNAME AS 商品类别,ic_t_inout_store_detail,bi_t_item_info,bi_t_item_cls');
QUERY1.SQL.Add('where ic_t_inout_store_detail.sheet_no like ''%PI%''and bi_t_item_info.item_no=ic_t_inout_store_detail.item_no and bi_t_item_cls.ITEM_CLSNO=bi_t_item_info.ITEM_CLSNO');
query1.SQL.Add('and ic_t_inout_store_detail.sheet_no in (select ic_t_inout_store_master.sheet_no from ic_t_inout_store_master where ic_t_inout_store_master.pay_date>=datetimepicker1.text and ic_t_inout_store_master.pay_date<=datetimepicker2.text');
query1.SQL.Add('and bi_t_branch_info.branch_no=edit4.text');
QUERY1.SQL.Add('AND bi_t_item_cls.ITEM_CLSNO=EDIT5.TEXT');
QUERY1.SQL.ADD('group by ic_t_inout_store_detail.item_no, bi_t_item_info.item_no,bi_t_item_info.item_name,bi_t_item_cls.ITEM_CLSNO,bi_t_item_cls.ITEM_CLSNAME ');
QUERY1.Open;
while not query1.eof do
begin
query2.Close;
query2.SQL.Clear;
QUERY2.SQL.text:='insert into ic_t_inout_store_detail5(商品编号,商品名称,采购数量,类别编号,商品类别)';
query2.Open;
query2.Parameters.paramvaluses['商品编号']:=query1.fieldbyname('商品编号').astnteger;
ADOQuery2.ExecSQL;
end
求助以上语句怎么写才正确
------解决方案--------------------
QUERY2.SQL.text:= "insert into ic_t_inout_store_detail5(商品编号,商品名称,采购数量,类别编号,商品类别) ";
query2.Open;
query2.Parameters.paramvaluses[ " "]:=query1.fieldbyname( "商品编号 ").astnteger;
ADOQuery2.ExecSQL;
1.insert 语句语法不对
2.insert语句中没有“商品编号”这个参数,无需赋值
3、insert语句要用execsql,open应去掉
------解决方案--------------------
你把哪个
query1.open;
query2.Close;
query2.SQL.Clear;
END; ----放到结尾部分