各位好:
   
    怎样知道库中某个表的存在,要求是返回Boolean型的!最好是能给个例子,,有例子的加高分,,谢谢,,
成功后立即结贴!!

解决方案 »

  1.   

    RS.Open "select [name] from sysobjects where  [name]='xxx'", CN, adOpenStatic, adLockReadOnly
    if rs.recordcound=0 then
    不存在
    endif
      

  2.   

    直接查表存在否,必须有系统表的存在。
    否则,建立关于表名的表,如果有系统表的存在则
    表的名字在 msystables 的 tablename 中
      

  3.   

    Public Function ExistTable(findTable As String, Cn As ADODB.Connection) As String
        Dim rstSchema As New ADODB.Recordset
     rstSchema.Open "select * from sysobjects where name = '" & findTable & "' ", Cn, adOpenKeyset, adLockOptimistic
     If rstSchema.RecordCount > 0 Then
        ExistTable = 1
    Else
        ExistTable = 0
    End If
    End Function
      

  4.   

    function   TableNameExist(byval researchtablename as string) as boolean
    Dim con as string
    dim db as new adodb.connection
    'con 对应你要连接库类型的字符串
    con="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=databasename ";Pesetrsist Security Info=False"
    set db =new adodb.connection
    db.open con
    dim tablename as adodb.recordset
    set tablename=db.openschema(adschematables)
     TableNameExist=false
    do until (tablename.eof or TableNameExist) 
       if tablename!table_name=researchtablename then
          TableNameExist=true
       endif
    loop
    end function
      

  5.   

    Public Function TableExists(DatabaseName As String, _ 
    TableName As String) As Boolean'DataBaseName is the file/path name of the database 
    'with the field you want to test
    'tablename is the table which you want to test
    'if database doesn't exist, an error is raisedDim oDB As Database, td As TableDefOn Error GoTo errorhandler
    Set oDB = Workspaces(0).OpenDatabase(DatabaseName)
    On Error Resume NextSet td = oDB.TableDefs(TableName)
    TableExists = Err.Number = 0
    oDB.Closeexit functionerrorhandler:Err.Raise Err.Number
    Exit Functionend function
      

  6.   

    'ADO:Public Function TableExists(DatabaseName As String, _ 
    TableName As String) As BooleanDim cn As ADODB.Connection, rs As ADODB.RecordsetOn Error GoTo errorhandler
    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DatabaseName
    On Error Resume NextSet rs = cn.Execute("SELECT * FROM " & TableName)
    TableExists = Err.Number = 0
    rs.Close
    Set rs = Nothing
    cn.Close
    Set cn = NothingExit functionerrorhandler:Err.Raise Err.NumberEnd function
      

  7.   

    if tablename!table_name=researchtablename then
          TableNameExist=true
       endif
    这句改为
      if tablename!table_name=researchtablename then
          TableNameExist=true
      else 
          tablename.movenext
      endif
      

  8.   

    这些问题问了好多次了!http://expert.csdn.net/Expert/topic/2012/2012840.xml?temp=.3834955