November 9
Come designer di database o un amministratore si può incorrere in la necessità di determinare la quantità di colonne in un database di Access per avere un'idea di quanto grande possa essere. In Access è possibile utilizzare Visual Basic, Applications Edition per arrivare a questo compito compiuto. In VBA è possibile costruire istruzioni SQL che è quindi possibile eseguire tramite l'utilizzo di un oggetto record set. L'oggetto record stabilito rappresenta l'intero set di record dai risultati dell'interrogazione che è quindi possibile utilizzare per determinare la quantità di colonne.
1 Fai clic su "Strumenti database" e fare clic su "Visual Basic" per aprire l'editor di Visual Basic di Microsoft. Creare una nuova procedura secondaria aggiungendo il seguente codice:
Private Sub countColumnsInDB ()
2 Creare le seguenti variabili per aggiungendo il seguente codice:
Dim strSQL As String
Dim tblArray (4) As String
Dim x As Integer
totalClmns fioco come Integer
Dim rst come Recordset
DBS fiochi come database
Set dbs = CurrentDb
3 Definire le tabelle nel database da includere nel conteggio colonna.
tblArray (0) = "Clienti"
tblArray (1) = "Dipendenti"
tblArray (2) = "Fatture"
tblArray (3) = "Ordini"
4 Creare un "ciclo FOR ..." ed eseguire una query SQL per ciascuna delle tabelle nella matrice definito nel passaggio tre. Prendi il numero di colonne per ogni tabella e mantenere anche un conteggio totale per tutte le colonne.
Per x = 0 a 3
strSQL = "SELECT" & (tblArray (x)) & & (tblArray (x)) & "* FROM." ";"
Set rst = dbs.OpenRecordset (strSQL)
Debug.Print tblArray (x) e "tabella contiene" & rst.Fields.Count e "colonne"
totalClmns = totalClmns + rst.Fields.Count
rst.Close
Successivo x
5 Visualizzare il numero totale di colonne presenti nelle tabelle.
Debug.Print "Numero totale di colonne in database:" & totalClmns
6 Terminare la procedura digitando "End Sub". Premere il tasto "Ctrl" e "G" per visualizzare la finestra immediata. Premere il tasto "F5" per eseguire la procedura e visualizzare i risultati attraverso la finestra immediata.