query2.Close;
      query2.SQL.Clear;
      query2.SQL.Add('insert into GZ_ZhiWuBZ(date,type,zhiji) values(:a,:b,:c)');
      query2.Parameters.ParamByName('a').Value:=DateToStr(DateTimePicker1.Date);
      query2.Parameters.ParamByName('b').Value:=query.fieldbyname('type').AsString;
      query2.Parameters.ParamByName('c').Value:=query.fieldbyname('zhiji').AsString;
      query2.ExecSQL;

解决方案 »

  1.   

    你把query2.Parameters.ParamByName('a').Value 
        改为query2.Parameters.ParamByName('a').AsString
       其他几个也这样改下试下!
      

  2.   

    你的‘a’定义的是时间类型,而你传值的时候用到了datatostr()传进去的是字符型数据,肯定不符合了。实际上,你一步一步执行,很容易发现错误的了
      

  3.   

    用FormatDateTime()函数去格式化日期格式.