在Delphi中用ADD控件打开Access文件
?牐犑紫仍诖疤逯屑尤胍韵驴丶?
?牐燽utton1,label1,label2,listbox1,edit1控件(它们在Standard选项卡上);
?牐爋pendialog1控件(在Dialogs选项卡上)
?牐燿atasource1控件(在Data Access选项卡上)
?牐燿bgrid1控件(在Data Controls选项卡上)
?牐燼doconnection1,adotable1控件(在ADO选项卡上)
?牐牳翘砑邮实钡氖粜裕顾侨鏭43020504a^1所示。它们的要添加的属性如下:
?牐燽utton1:caption 属性:'打开';??
?牐爈abel1:caption 属性:'Access文件';??
?牐爈abel2:caption 属性:'请选择表';
?牐爀dit1:text 属性:' ';(即空白)??
?牐爋pendialog1:filter属性:*.mdb|*.mdb;??
?牐燿bgrid1:datasource 属性:datasource1;??
?牐燿atasource1:dataset 属性:adotable1;??
?牐燼dotable1:connection 属性:adoconnection1;??
?牐燼doconnection1:loginprompt 属性:false;??
?牐犔砑邮粜院螅颐蔷透录砑映绦虼耄灰赽utton1的onclick事件和listbox1的ondblclick事件中添加程序即可,添加的程序如下:
?牐燽utton1的onclick事件:
?牐爌rocedure TForm1.Button1Click(Sender:TObject)?牔?
?牐爒ar
?牐爉yaccess:string;??
?牐燾onst
?牐爉yStr1='Provider=%s;Data Provider=%s;Data Source=%s';??
?牐爗给出接口参数}??
?牐爉yprovider='msdatashape.1';??
?牐爉ydataprovider='microsoft.jet.oledb.4.0';??
?牐燽egin
?牐爋pendialog1.FileName:='*.mdb';??
?牐爄f opendialog1.Execute then
?牐燽egin
?牐爉yaccess:=opendialog1.FileName;??
?牐爀dit1.Text:=myaccess;??
?牐燼doconnection1.Connected:=false;??
?牐燼doconnection1.ConnectionString:=format(mystr1,
?牐燵myprovider,mydataprovider,myaccess]);?牐牔?
?牐燼doconnection1.Connected:=true;??
?牐燼doconnection1.GetTableNames(listbox1.Items);?牔?
?牐爀nd;??
?牐爀nd;??
?牐爈istbox1的ondblclick事件:
?牐爌rocedure TForm1.ListBox1DblClick(Sender:TObject)?牔?
?牐燽egin
?牐燼dotable1.Close;??
?牐燼dotable1.TableName:=listbox1.Items.Strings[listbox1.itemindex];?牔?
?牐燼dotable1.Open;??
?牐爀nd;??
?牐犔砑映绦蚝笤诵校宰糯蚩桓鯝ccess文件。比如我打开一个在E盘的“E:\My Documents\myaccess1.mdb”文件(^43020504b^2),该文件中有五个表,双击任何一个就会自动打开。致于对数据库的添加、删除等操作,adotable控件和table控件差不多,这里就不说了,有兴趣的读者可以自己试试(以上程序已在Delphi 5.0中调试通过和在没有安装Delphi及BDE的电脑上运行成功)。