在DBF所有字段正常及没有空日期的情况下都可以正常导入,但要是DBF内的日期字段为空(‘//’)时,导入就出错,请教高手有没有办法处理

解决方案 »

  1.   

    AA:='INSERT into [SQL表] select * from OpenDataSource(....)...[DBF]';
        with ADOConnection1 do begin
          ConnectionString:='连接SQL数据库';
          open();
          Execute(AA);
          close();请教,这样可以吗
      

  2.   

    问题已经找到,不是空日期'//'出错的原因,而是日期字段内某记录的日期有'01-01-0200'的日期,造成出错,如果是空日期可以正常导入,就不知有高手能不能用SQL命令处理掉这种日期,我用VFP来判断它大于任何日期数,我就在delphi 用SELECT CASE WHEN来判断大于指定日期数就把它改了,但没用,好像还没到判断的语句命令时,它就已经出错了,也就是说要读这个内容出来就出错了,根本就不让你读出来.
      

  3.   

    要不这样,你先把空日期全部换成一个特殊日期,比如说:  1905-5-5然后再导入,然后再用sql 将 1905-5-5的日期全部替换成空的.
      

  4.   

    AA:='INSERT into [SQL表] select * from OpenDataSource(....)...[DBF]'; 
        with ADOConnection1 do begin 
          ConnectionString:='连接SQL数据库'; 
          open(); 
          Execute(AA); 
          close(); 
    不理解 能说下意识么