各位前辈,我遇到一个问题,我把要记录的数据写入了文件,想把这些数据转入SQL的一个表中保存,以便在程序中通过读这个表来显示这些数据,从没接触过这方面程序,所以请大家能否给点例程教我一下如何把文本中的数据通过VC中写程序来实现存入表中,我写入文件的数据都是很规律的,一行就是一条记录,例如: 
2008-1-20   12:25:20     88;65;5555;9654;8;125;6345;89;9225; 
2008-1-20   12:25:21     88;165;5535;9568;18;125;6345;254;5869;  
.................................................................................. 
.................................................................................. 
下面都是类似的,总之一行一条记录 
如果哪位大侠知道,还请不吝赐教,最好有例子,感激谢谢

解决方案 »

  1.   

    1.确认没列的分隔符,比如是tab键
    2.在.txt同目录下,新建schema.ini文件
    3.打开schema.ini,写
    [???.txt]
    ColNameHeader=FALSE//文本文件内无列名
    Format=TabDelimited//tab间隔
    Col1=aaa Char Width 16
    ...
    4.
    CString sql;
    sql.Format("SELECT * INTO 表名 FROM [text;database=%s].???.txt , devi_32",dir);
    m_pConn->Execute((_bstr_t)sql,0,adCmdText+adExecuteNoRecords);
      

  2.   


    1楼的方法不错。
    还有一种笨办法就是:1、从文件中读取一行记录;2、拆分各字段;3、用SQL语句写入数据库中的表。
      

  3.   

    4写错了
    sql.Format("SELECT   *   INTO   表名   FROM   [text;database=%s].???.txt    ",dir); 
    复制自己的时候改漏了
      

  4.   

    每读一条解析下每个参数的意思再存入数据库吧 sscanf
      

  5.   

    二楼的朋友,你的方法我之前试过,但由于数据量比较大,那样太慢。
    一楼的哥们,很是谢谢你,因为我记得上次你就回答过我的这个问题,但放假了我没去研究,现在在想办法解决,想问一下,你那句话中
    sql.Format("SELECT   *   INTO   表名   FROM   [text;database=%s].???.txt   ,   devi_32",dir); 
    devi_32",dir是表示什么意义呢。
      

  6.   

    dir是路径
    devi_32是败笔,复制自己的代码漏删了
      

  7.   

    dir代表什么路径啊
    .txt的还是数据库的路径啊
    我试了两个都说路径有问题
    什么原因啊
      

  8.   

    因为select into本来就是插入未建立的表
    用insert into就是插入到已有的表中只能一个属性里面什么意思??
      

  9.   


    shakaqrj :
    您好,这是您昨天给我程序的代码, 
    CString sql;  
    sql.Format("SELECT   *   INTO   511   FROM   [text;database=%s].511.txt",Accdlg.m_filename);   
    m_pConnection-> Execute((_bstr_t)sql,0,adCmdText+adExecuteNoRecords); 我的文本文件的名称是511,  Accdlg.m_filename是我的一个对话框选择的路径,路径是C:\Documents and Settings\song1\桌面\zhuanhuan\511.txt 
    您看我这句话有没有错误? 谢谢您!