老师要我们用delphi做一个管理信息系统,要求使用Access数据库,ADO连接数据源。
我现在还不会设置数据源。
不知道哪位高手能教教我!不胜感激!

解决方案 »

  1.   

    用ADOConnection控件,设置ConnectionString,在数据连接属性里选Microsoft Jet 4.0 OLE DB Provider,再设置mdb文件的路径和密码。测试连接,如果成功就连接好了。
      

  2.   

    unit SysDBUnit;interfaceuses
      SysUtils, Classes, ADODB, Forms, DB, Dialogs;Const
       LinkDBStr = 'DBQ=%s;DefaultDir=%s;Driver=%s;DriverId=25;FIL=MS Access;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;PWD=%s;SafeTransactions=0;Threads=3;UID=admin;UserCommitSync=Yes;';
    type  TSysDB = class(TDataModule)
        MainConn: TADOConnection;
        WQuery: TADOQuery;
        RQuery: TADOQuery;
        procedure DataModuleCreate(Sender: TObject);
        procedure DataModuleDestroy(Sender: TObject);
      public
        ExePath: String;
        
        function LinkDBServer(aDBPath: String):Boolean;
        procedure ExecSQL(aQuery:TADOQuery;aSQL: String; aExecMode: boolean);
      end;var SysDB: TSysDB;
    implementation{$R *.dfm}{ TSysDB }procedure TSysDB.DataModuleCreate(Sender: TObject);
    begin
      ExePath := ExtractFilePath(Application.ExeName);
      if not LinkDBServer(ExePath) then
      begin
        ShowMessage('连接数据库出错!');
        Application.Terminate;
      end;
    end;procedure TSysDB.DataModuleDestroy(Sender: TObject);
    begin
      MainConn.Connected := False;
    end;
                     //aExecMode 为 True 则需要TADOQuery返回数据. 适用于查询操作
                     //aExecMode 为 False 则不需要TADOQuery 返回数据. 适用于更新操作
    procedure TSysDB.ExecSQL(aQuery: TADOQuery; aSQL: String; aExecMode: boolean);
    begin
      aQuery.SQL.Clear;
      aQuery.SQL.Add(aSQL);
      if aExecMode then
        aQuery.Open
      else
        aQuery.ExecSQL;
    end;function TSysDB.LinkDBServer(aDBPath: String): Boolean;
      procedure CloseConn;
      begin
        MainConn.Connected := False;
        MainConn.Close;
      end;var aDBFile, aDBName, aDBPass: String;
    begin
      Result := False;
      aDBName := '{Microsoft Access Driver (*.mdb)}';
      aDBFile := aDBPath + 'HaoCool.mdb';
      aDBPass := 'Hao';  Try
        CloseConn;
        MainConn.ConnectionString := Format(LinkDBStr, [aDBFile, aDBPath, aDBName, aDBPass]);
        MainConn.LoginPrompt := False;
        MainConn.Connected := True;
        Result := True;
      Except
        CloseConn;
      end;
    end;
    end.
      

  3.   

    在ADO中选择一个ADOConnection控件,双击这个控件,出来一个对话框,选择"use connection string",单击build,出来连接属性,然后选择数据库名称,若数据库没有密码,则选择空白密码,测试连接,连接成功后确定.
    loginPrompt(若没有密码)属性值为false,然后将connected属性值改为true,连接成功.
      

  4.   

    Try
    ADOPaper.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;'
    +'Data Source='+GetCurrentDir()+'\database\storage.MDB;' ;
    ADOPaper.Open();
    ADOPaper.Close();
    Except
    MyMessage('连接数据库出错!');
    ADOPaper.Free();
    end;
      

  5.   

    在ado标签里,找到ADOConnection控件,设置ConnectionString,在数据连接属性里选Microsoft Jet 4.0 OLE DB Provider。然后找到你的数据库,测试连接,如果成功就连接好了