如何给access动态设置别名
谁有完整的代码能实现对当前路径下的access文件设置别名
必有重谢。

解决方案 »

  1.   

    转贴:
    如何动态设置BDE别名  这个问题其实是考察程序员对BDE的TSession组件的熟悉程度,一个数据库程序的建立,即使你没有显式的添加TSession组件,系统中依然存在一个名字为Session的TSession对象,你可以在任何位置调用该对象的方法和属性。TSession类的很多方法可以帮助我们的应用程序获取系统BDE环境,下面介绍一个代码片断用以添加一个BDE别名:  var
      BDEList : TStringList ;
      ...
      begin
      ...
      BDEList := TStringList.Create () ; 
      try
      Session.GetAliasNames(BDElist) ; // 获取系统所有BDE别名列表
      if BDEList.IndexOf('DragonPC')= -1 then begin // 如果没有我们的BDE别名"DragonPC"
      BDEList.Clear ;
      BDEList.Add('SERVER NAME=' + 'SQLServerName')); // 数据库服务器名称
      BDEList.Add('DATABASE NAME=master') ; // 默认数据库
      BDEList.Add('USER NAME=sa'); // 用户名
      Session.AddAlias('DragonPC', 'MSSQL', BDEList) ; // 添加一个MSSQL类型的BDE别名
      ShowMessage('系统即将建立BDE别名!') ;
      Session.SaveConfigFile() ; // 存储BDE配置
      end;
      finally
      BDEList.Free ;
      end;  这么简单,用户就可以随时建立、删除和修改BDE别名(有兴趣的朋友可以查看TSession组件的源代码,看看调用了哪些BDE函数)。另外像DeleteAlias,ModifyAlias,GetDatabaseNames,GetDriverNames,GetStoredProcNames,GetTableNames,GetPassword等等TSession类的方法,使用起来非常简单,通过Delphi的随机帮助,读者可以试着自己调用一下看看。通过对Session的灵活应用,再配合我下面将要提到的扑捉SQL异常的技巧,你完全可以写一个媲美SQL Explorer的通用数据库查询工具。
      

  2.   

    一楼的,你的代码是动态添加SQL SERVER啦,呵呵,
    楼主,我认为没必要设置别名,用ADO直接就可以访问了啊,我的代码不在这儿,明天到公司发吧,好久前写的,都快忘了
      

  3.   

    谢谢,希望能提供完整的访问access的源代码