ADO控件的兼容性不是太好,我给你个类模块吧,如果不需要绑定控件还是用代码,兼容性和灵活性都比较好的==========cADODB.cls============VERSION 1.0 CLASSBEGIN MultiUse = -1 'True Persistable = 0 'NotPersistable DataBindingBehavior = 0 'vbNone DataSourceBehavior = 0 'vbNone MTSTransactionMode = 0 'NotAnMTSObjectENDAttribute VB_Name = "cADODB"Attribute VB_GlobalNameSpace = FalseAttribute VB_Creatable = TrueAttribute VB_PredeclaredId = FalseAttribute VB_Exposed = FalseConst SQL1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="Public Path As StringDim conn As New ADODB.ConnectionPublic Property Get Connection() As ADODB.ConnectionAttribute Connection.VB_UserMemId = 0Set Connection = connEnd PropertyFunction OpenMDBDatabase(Path)Class_Terminateconn.Open SQL1 & Path '& ";Persist Security Info=False"Me.Path = PathEnd FunctionFunction OpenRS(SQL, Optional rs As ADODB.Recordset, Optional ForEdit As Boolean) As BooleanIf ForEdit Then Set rs = New ADODB.Recordset rs.Open SQL, conn, adOpenDynamic, adLockOptimisticElse Set rs = conn.Execute(SQL)End IfOpenRS = Not (rs.EOF And rs.BOF)End FunctionFunction NullFilter(s)If Not IsNull(s) Then NullFilter = sEnd FunctionPrivate Sub Class_Terminate()If conn.state <> 0 Then conn.CloseEnd Sub==========cADODB.cls============我的设计也是VB+Access2000,写成模块使用方便,还可以打开多个数据库 肯定有,如果修改了表名,那么Adodc的RecordSource属性里面的Select * From <表名>肯定要修改