DatabaseName怎么可以对应一个文件呢?
^_^

解决方案 »

  1.   

    table1.DatabaseName:=filepath;
    if FileExists(ExtractFilePath(filepath)+'temptab.db') then//ExtractFilePath保证所得路径以'\'结尾,Temptab.db是数据库的文件名,请根据具体情况修改.
    begin
    table1.TableName:='temptab';
      

  2.   

    to li_zhifu(东北人) 
    我用的是Access数据库,而且在:
    if FileExists......
    这一步调试通过了,就是到了:
    if Table1.Exists then
    这一步的时候发生错误了,是不是因为使用Access数据库的原因?
    或者是要使用别名?
      

  3.   

    首先你看看你得bde是不是有错误,当bde的版本不同事会出现这个错误提示的,你可以用delphi自带的例子测试。
    如果不是,有个笨办法就是动态设定别名,不过我想你的应该没有问题。
    建议用ado,要容易得多。
      

  4.   

    请问用哪一个Ado控件,我以前用的是VB,在vb中用这样的问题简直是非常Easy,但是到了Delphi中就出现了这样的问题,真是倒霉。
    还有,不知道有没有用过下述方法试过:
    FindDabaseID('');
    根据它的返回值来调用:
    FindTableID(DatabaseID,false);
    然后根据返回的TableID来判断是否存在。
    但是,问题来了,我用
    FindDatabaseID函数的时候就出现问题了,不知道这是为什么?
    我昨天才开始用Delphi,不知道是不是要像c/c++中那样:#include <>什么的?
      

  5.   

    你的问题在于数据库的别名,table1.DatabaseName要的是别名,你可以在BDE上创建一个别名,也可以用TDataBase控件建一个别名
      

  6.   

    table1.DatabaseName只能是BDE别名或路径而不是文件全路径,如table1.DatabaseName:='C:\windows\'
    如果你的filepath是路径的话,应该用if directoryexists() 而不是fileexists,fileexists的单元FileCtrl