1. 程式人生 > >Delphi 7中ADO控制元件開啟Access資料庫檔案

Delphi 7中ADO控制元件開啟Access資料庫檔案

最近在學習delphi 7程式設計,儘管已經這門語言已經落寞了,但是作為新手,我目前覺得delphi難度比其他的小,可能與視覺化環境有關,尤其很多控制元件拖拖拖就可以了。以下理解可能有很多錯誤,希望高手指正,謝謝啦

介面如下:
介面的圖片

新增相關控制元件:

控制元件 屬性修改 修改後的內容
ADOConnection1 ConnectionString
ADOTable1 Connection ADOConnection1
DataSource1 DataSet ADOTable1
DBGird1 DataSource DataSource1

程式碼如下:

procedure TForm1.Button1Click(Sender: TObject);//“開啟”按鈕單擊事件
const//常量
  dbadoconstr = 'Provider=%s;Data Source=%s;Persist Security Info=false';
  //Provider=[驅動程式];Password=[密碼];Persist Security Info=True;User ID=[使用者名稱];Data Source=[資料來源別名]
  //Persist Security Info屬性的意思是表示是否儲存安全資訊,其實可以簡單的理解為"ADO在資料庫連線成功後是否儲存密碼資訊",True表示儲存,False表示不儲存
dbprovider = 'Microsoft.Jet.OLEDB.4.0';//資料庫驅動的名稱 var myaccess : string;//定義資料庫檔案路徑變數 begin OpenDialog1.FileName := '*.mdb';//開啟檔案的名稱 if OpenDialog1.Execute then //如果檔案打步驟執行了,就返回True begin myaccess := OpenDialog1.FileName; //檔案路徑 Edit1.Text := myaccess;//在Edit1中顯示檔案路徑 ADOConnection1.Connected := False; ADOConnection1.ConnectionString := Format(dbadoconstr,[dbprovider,myaccess]); //上條語句為將格式化後的字串給ConnectionString,用於連線資料庫
ADOConnection1.Connected := True; ADOConnection1.GetTableNames(ListBox1.Items);//獲得資料庫檔案中所有的表的名稱,賦值到listbox1.items中 end; end; procedure TForm1.ListBox1DblClick(Sender: TObject);//Listbox1中雙擊事件 begin ADOTable1.Close;//表名查詢關閉 ADOTable1.TableName := ListBox1.Items.Strings[ListBox1.Itemindex];//將當前雙擊的表名賦值給ADOTable1的表名中。 ADOTable1.Open;//表名查詢開啟 end;