ADOXオブジェクトを使用してテーブルのインデックスを作成するには


ADOXオブジェクトを使用してAccessのテーブルのインデックスを作成する例を紹介します。


使用例
Visual Basic Editor(VBE)を起動したら、モジュールウインドウにSub CreateIndexをコピー&ペーストします。イミディエイトウインドウからCreateIndexを実行する前に、ツールメニューから参照設定をクリックして Microsoft ADO Ext. 2.1 for DDL and Securityを組み込んでください。

Sub CreateIndex()
  Dim cat As New ADOX.Catalog
  Dim tbl As New ADOX.Table
  Dim idx As New ADOX.Index

  cat.ActiveConnection = CurrentProject.Connection
  Set tbl = cat.Tables("Clients")
  
  With idx
    .Name = "PrimaryKey"
    .Columns.Append ("ClientID")
    .IndexNulls = adIndexNullsDisallow
    .PrimaryKey = True
    .Unique = True
  End With
  
  tbl.Indexes.Append idx

End Sub