用AdoDataSet的LoadFormFile装入一个文件后,
如下操作;
   ADODataSet1.close;
   ADODataSet1.commandText:='select * from table';
   ADODataSet1.Open;
   ADODataSet1.SaveToFile('\abc.dat',pfAdtg);  ADODataSet1.close;
  ADODataSet1.LoadFromFile('\abc.dat');  ADODataSet1.close;
  ADODataSet1.commandText:='select * from table';
  ADODataSet1.Open;   //运行时出错,如何解决

解决方案 »

  1.   

    是不是AdoDataSet用了LoadFromFile之后就不能
    再执行Sql语句了?
    有何补救办法。
    我是今天才发现这个问题。
      

  2.   

    在ADO API中只支持XML文件类型,如果你一定要用,最好用Xml文件保存, so try the following...   ADODataSet1.close;
       ADODataSet1.commandText:='select * from table';
       ADODataSet1.Open;
       //ADODataSet1.SaveToFile('\abc.dat',pfAdtg);
       ADODataSet1.SaveToFile('\abc.dat',pfXml);  ADODataSet1.close;
      ADODataSet1.LoadFromFile('\abc.dat');  ADODataSet1.close;
      ADODataSet1.commandText:='select * from table';
      

  3.   

    会有这种问题?
    先检查你设置了ConnectionString或Connect了吗?把错误信息贴出来。
      

  4.   

    真的有这个问题,不信你把上面的代码复制运行一下。 出错时提示‘文件...没有找到'
    我只好这样了:用一个单独的AdoDataSet 运行LoadFromFile的方法,
    不再要用它执行Sql打开表了.
      

  5.   

    在最后一个ADODataset.Close后面加一行:ADODataset.CommandType:=cmdText
      

  6.   

    存的abc.dat文件是table的数据文件,不是数据库文件。
    用LoadFromFile就把数据都已经导到ADOdataset里面去了,已经可以进行数据集操作了,
    还用什么'select.....'干嘛?
    去掉
    ADODataSet1.close;
    ADODataSet1.commandText:='select * from table';
    ADODataSet1.Open;