15 November 2013

Togli dbo_ da tabelle collegate

Rinomina le tabelle, togliendo il prefisso "dbo_".

Public Sub Togli_DBO()
    
    Dim db As DAO.Database
    Dim sq As String
    Dim rs As DAO.Recordset
    Dim oldName As String
    Dim newName As String
    
    
    Set db = CurrentDb
        
        
    sq = ""
    sq = sq & "SELECT   Name "
    sq = sq & "FROM     MSysObjects "
    sq = sq & "WHERE    Type = 4 "
    sq = sq & "     AND Name LIKE 'dbo_*' "
    
    Set rs = db.OpenRecordset(sq, dbOpenDynaset)
    
    While Not rs.EOF
        oldName = rs!Name
        newName = Replace(oldName, "dbo_", "")
    
        Debug.Print oldName & " --> " & newName
        DoCmd.Rename newName, acTable, oldName
        
        rs.MoveNext
    Wend
    
    Set rs = Nothing
    Set db = Nothing
    
End Sub