OpenSchema メソッドの例 (VB)

この例では、OpenSchema メソッドを使って、Pubs データベース内の、それぞれのテーブルの名前と種類を表示します。

Public Sub OpenSchemaX()

    Dim cnn1 As ADODB.Connection
    Dim rstSchema As ADODB.Recordset
    Dim strCnn As String
        
    Set cnn1 = New ADODB.Connection
        strCnn = "Provider=sqloledb;" & _
        "Data Source=srv;Initial Catalog=Pubs;User Id=sa;Password=; "
    cnn1.Open strCnn
        
    Set rstSchema = cnn1.OpenSchema(adSchemaTables)
    
    Do Until rstSchema.EOF
        Debug.Print "Table name: " & _
            rstSchema!TABLE_NAME & vbCr & _
            "Table type: " & rstSchema!TABLE_TYPE & vbCr
        rstSchema.MoveNext
    Loop
    rstSchema.Close
    
    cnn1.Close
    
End Sub

この例では、OpenSchema メソッドの Criteria 引数内に TABLE_TYPE クエリ制約を指定します。結果として、Pubs データベースに指定された Views に関するスキーマ情報のみが返されます。そして、この例ではそれぞれのテーブルの名前と種類が表示されます。

Public Sub OpenSchemaX2()

    Dim cnn2 As ADODB.Connection
    Dim rstSchema As ADODB.Recordset
    Dim strCnn As String
        
    Set cnn2 = New ADODB.Connection
        strCnn = "Provider=sqloledb;" & _
        "Data Source=srv;Initial Catalog=Pubs;User Id=sa;Password=; "
    cnn2.Open strCnn
        
    Set rstSchema = cnn2.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "VIEW"))

        Do Until rstSchema.EOF
            Debug.Print "Table name: " & _
                rstSchema!TABLE_NAME & vbCr & _
                "Table type: " & rstSchema!TABLE_TYPE & vbCr
            rstSchema.MoveNext
        Loop
    rstSchema.Close
    
    cnn2.Close
    
End Sub