关于动态创建TAdoQuery的问题,急!
晨晨 2004-03-30 03:36:57 我现在做了一个数据库应用程序,以前我做的都是基于FORM的数据库程序,直接在窗体中拖入ADO控件就行了。可是现在在做一个不是基于的FORM的程序,我要动态创建ADO,可是我不知道该怎么做。我已经写了下列代码:
AdoConn := TAdoConnection.Create(self);
AdoConnectionstr := 'Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;'+ 'Data Source='+GetCurrentDir+'\DBPhone.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";'+'Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;'+'Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don''t Copy Locale on Compact=False;'+'Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False';
AdoConn.ConnectionString := AdoConnectionStr;
adoconn.Close;
adoconn.LoginPrompt := False;
AdoConn.Open;
AdoQuery := TadoQuery.Create(self);
AdoQuery.Connection := Adoconn;
AdoQuery.SQL.Add('select *from Totaluser') ;
AdoQuery.Open;
//showmessage(AdoQuery.Fields.Fields[0]);
AdodataSource := TDataSource.Create(self);
AdoDataSource.DataSet := AdoQuery;
//DbGrid1.Fields[0].FieldName := AdoQuery.FieldDefList.FieldDefs[0].Name;
DbGrid1.DataSource := AdoDataSource;
我想把totalcall中的数据取得,然后在dbgrid1中显示了来,请问我该怎么做呀?要不要动态初建Fields呀,哪位高手能给我写一段代码参考一下,非常感谢!