1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Für 32Bit und 64Bit Office Versionen

Problemstellung:

Wie kann ich einen Indexnamen mittels ADO(X) ändern?


Verweis auf die Microsoft ActiveX Data Objects 2.X Library erforderlich
Verweis auf die Microsoft ADO Ext. 2.X for DDL and Security Library erforderlich

Public Sub NewIndexNameADOX(strTableName As String, strIndexName As String, strNewIndexName As String)
'*******************************************
'Name:      NewIndexNameADOX   (Sub)
'Purpose:   ändert den Name des angegebenen Index mittels ADOX
'Author:    Tommyk
'Date:      Februar 29, 2004, 04:01:51
'Inputs:    strTableName=Name der Tabelle, strIndexName=Name des Index
'           strNewIndexName=Neuer Name des Index
'Output:
'*******************************************
On Error GoTo ErrHandler
Dim cn As New ADODB.Connection
Dim cat As New ADOX.Catalog
Dim tbl As ADOX.Table
Dim idx As ADOX.Index
Set cn = CurrentProject.Connection
Set cat.ActiveConnection = cn
Set tbl = cat.Tables(strTableName)
Set idx = tbl.Indexes(strIndexName)
    idx.Name = strNewIndexName
    tbl.Indexes.Refresh
Set cat = Nothing
cn.Close
ExitHere:
    Exit Sub
ErrHandler:
    Dim strErrString As String
    strErrString = "Error Information..." & vbCrLf
    strErrString = strErrString & "Error#: " & Err.Number & vbCrLf
    strErrString = strErrString & "Description: " & Err.Description
    MsgBox strErrString, vbCritical + vbOKOnly, "Error in Sub: NewIndexNameADOX"
    Resume ExitHere
End Sub

Aufruf:

Call NewIndexNameADOX("tblNeu", "TestIndex", "NewIndex")


würde in der Tabelle "tblNeu" den Index "TestIndex" in "NewIndex" umbenennen.

 

Ähnliche Artikel