如何判断数据库中的一个表是否存在。Access和SqlServer各用什么方法?

解决方案 »

  1.   


    if exists(select 1 from sysobjects where xtype='U' and name='表')
      

  2.   


    --上面这个是sql,这个是access在vba中判断 myData ="C:\NewData.mdb"
            If Dir(myData) = "" Then
            MsgBox "指定的数据库不存在!", vbCritical, "无法打开数据库"
            Exit Sub
        End If
      

  3.   

    或者这样sqlif object_id('yourt') is not null
      

  4.   

    ado中可以使用
    Connection的OpenSchema方法
    ado.net中可以使用 datareader的getSchemaTable方法.具体写法我不写了,请参考ado及ado.net手册,或msdn.
      

  5.   

    if exists(select 1 from sysobjects where id = object_id('表'))
      

  6.   

    access--列出所有的用户表 SELECT   * 
    FROM   MSysObjects 
    WHERE   Flags=0   AND   Type=1 
      

  7.   

    if object_id('表名') is not null