PrimaryKey 및 Unique 속성 예제(VB)
이 예제에서는 Index의 PrimaryKey 및 Unique 속성을 보여 줍니다. 코드는 두 개의 열이 있는 새 테이블을 만듭니다. PrimaryKey 및 Unique 속성은 한 열을 중복 값이 허용되지 않는 기본 키로 만드는 데 사용됩니다.
' BeginPrimaryKeyVB
Sub Main()
On Error GoTo PrimaryKeyXError
Dim catNorthwind As New ADOX.Catalog
Dim tblNew As New ADOX.Table
Dim idxNew As New ADOX.Index
Dim idxLoop As New ADOX.Index
Dim colLoop As New ADOX.Column
' Connect the catalog
catNorthwind.ActiveConnection = "Provider='Microsoft.Jet.OLEDB.4.0';" & _
"Data Source='Northwind.mdb';"
' Name new table
tblNew.Name = "NewTable"
' Append a numeric and a text field to new table.
tblNew.Columns.Append "NumField", adInteger, 20
tblNew.Columns.Append "TextField", adVarWChar, 20
' Append new Primary Key index on NumField column
' to new table
idxNew.Name = "NumIndex"
idxNew.Columns.Append "NumField"
idxNew.PrimaryKey = True
idxNew.Unique = True
tblNew.Indexes.Append idxNew
' Append an index on Textfield to new table.
' Note the different technique: Specifying index and
' column name as parameters of the Append method
tblNew.Indexes.Append "TextIndex", "TextField"
' Append the new table
catNorthwind.Tables.Append tblNew
With tblNew
Debug.Print tblNew.Indexes.Count & " Indexes in " & _
tblNew.Name & " Table"
' Enumerate Indexes collection.
For Each idxLoop In .Indexes
With idxLoop
Debug.Print "Index " & .Name
Debug.Print " Primary key = " & .PrimaryKey
Debug.Print " Unique = " & .Unique
' Enumerate Columns collection of each Index
' object.
Debug.Print " Columns"
For Each colLoop In .Columns
Debug.Print " " & colLoop.Name
Next colLoop
End With
Next idxLoop
End With
' Delete new table as this is a demonstration.
catNorthwind.Tables.Delete tblNew.Name
'Clean up
Set catNorthwind.ActiveConnection = Nothing
Set catNorthwind = Nothing
Set tblNew = Nothing
Set idxNew = Nothing
Set idxLoop = Nothing
Set colLoop = Nothing
Exit Sub
PrimaryKeyXError:
Set catNorthwind = Nothing
Set tblNew = Nothing
Set idxNew = Nothing
Set idxLoop = Nothing
Set colLoop = Nothing
If Err <> 0 Then
MsgBox Err.Source & "-->" & Err.Description, , "Error"
End If
End Sub
' EndPrimaryKeyVB