txt文本中后面的列不存入是有办法的,但如果中间任意一列不存入好象没办法的。

解决方案 »

  1.   

    真的没有办法吗,我试过他是将txt中的纪录,顺序存入表中前面的字段里,是这样吗?
    如果不能有选择的存,是不是只能一条一条的做了,这样工作量很大的啊
      

  2.   

    怎么手工处理啊,不明白,是对txt文件处理吗
      

  3.   

    1。给数据库表加入一些临时字段,导入后再删除这些字段。
    2。把txt文件用EXE打开,删除不要的列再导入数据库。
      

  4.   

    LOAD DATA INFILE 'file_name.txt' INTO TABLE tbl_name FIELDS TERMINATED BY ',' (col_name,...)
    在最后面指定字段名列表
      

  5.   

    呵呵,最灵活的办法就是将TXT文件读入内存,
    然后组合成SQL,
    向数据库中导入吧
      

  6.   

    就是向数据库导入,老板让我把txt导入临时表中,然后再作一些数据合法性的判断,合法的话,就把有些字段的数据导入库中
      

  7.   

    给你一个函数,
    对于将字符串以一个固定字符分开procedure SeparateTerms(s : string;Separator : char;Terms : TStringList);
      var
      hs : string;
      p : integer;begin
      Terms.Clear; // 清除所有的terms
      if Length(s)=0 then   // 如没有任何分隔字符存在就退出
        Exit;
      p:=Pos(Separator,s);
      while P<>0 do
      begin
        hs:=Copy(s,1,p-1);   // 复制 term
        Terms.Add(hs);       // 加入 term
        Delete(s,1,p);       // 清除分隔符
        p:=Pos(Separator,s); // 寻找下一个分隔符
      end;
      if Length(s)>0 then
        Terms.Add(s);        // 结尾剩余字符加入 term
    end;
    //使用办法var
    Terms : TStringList;begin
      
      Terms:=TStringList.Create;
      str1='TEST|44.5|4'
      SeparateTerms(str1,'|',Terms);
      //
       加入你的处理代码
      //
      Terms.Free;
    end;
      

  8.   

    来支持一下下吧
    http://www.csdn.net/expert/topic/1053/1053637.xml?temp=.1185419
      

  9.   

    比如你的一个文本文件是这样的用户帐号,用户姓名,状态
    12345678,,通
    12345677,,关
    123531298,王新全,通
    123531299,王新全,通
    123531300,王新全,关
    123531314,,通你可以一行一行地读出来,
    然后用SeparateTerms(str1,',',Terms);来处理 Terms[0]  里放的是 用户帐号
    Terms[1]  里放的是 用户姓名
    Terms[2]  里放的是 用户状态来支持一下下吧
    http://www.csdn.net/expert/topic/1053/1053637.xml?temp=.1185419
      

  10.   

    呵呵,有解决吗,我是自己写的一个数据备份与还原模块,
    在备份进直接写成SQL语句,
    就不用你这么麻烦了
      

  11.   

    我没用你给的函数,直接将txt文本中的数据导入到了临时表里,老板说了这样速度快