dtp1.Date:=date() // 在formshow是初始化;var plan_date:string;//保存格式化时间字符,用showmessage显示过是正确的begin plan_date:=FormatDateTime('yyyy-mm-dd ',dtp1.Date)+FormatDateTime('hh:mm:ss ',now()); with main_dmfrm.o_orders_adoq1 do begin close; sql.Clear; sql.Add('insert into #orders(art_no,suppl_no,ord_date,ord_tot_qty,' +'ord_tot_amount,planned_deldate) ' +'values ('+edit2.text+','+edit4.text+',convert(nvarchar(10),getdate(),121),' +''+edit7.Text+','+edit7.Text+'*'+edit6.Text+','+inttostr(trunc(dtp1.Date-2))+')');//我不得不减两天才正确 execsql; end;大家帮我看看啊...