λογισμικό

* Γνώση Υπολογιστών >> λογισμικό >> λογισμικού βάσεων δεδομένων

Πώς να αποκτήσετε πρόσβαση VBA ερωτήματος στη λίστα τους πίνακες σε μια βάση δεδομένων

Microsoft Access είναι ένα σύστημα διαχείρισης βάσεων δεδομένων για τα άτομα να δημιουργήσουν τις δικές τους βάσεις δεδομένων, αναφορές και φόρμες χρήστη . Access περιέχει όλα τα δομικά στοιχεία για την ανάπτυξη μικρών εφαρμογών . Μπορείτε να δημιουργήσετε πίνακες δεδομένων , αποθηκευμένες διαδικασίες, συναρτήσεις οριζόμενες από το χρήστη και μακροεντολών εκτός από τις εκθέσεις και τις μορφές . Όλα αυτά τα συστατικά έχουν τους δικούς τους δείκτες και τους ορισμούς ρεκόρ σε έναν κρυφό πίνακα συστήματος . Πρόσβαση παρακολουθεί κάθε τραπέζι , έκθεση , τη μορφή, κλπ. μπορείτε να δημιουργήσετε και να αποθηκεύει πληροφορίες όπως πότε δημιουργήθηκε ή ενημερώθηκε και σημαίες του συστήματος . Οδηγίες
πάρει μια λίστα των πινάκων

1

Δημιουργήστε ένα ερώτημα για να εκτελέσετε την εντολή SQL παρακάτω . Αυτό το ερώτημα ανακτά μια λίστα με όλους τους πίνακες στην τρέχουσα βάση δεδομένων της Access . Η ρήτρα όταν χρησιμοποιεί τον αριθμό 1 για να δείξουμε ότι θέλουμε μόνο οι πίνακες επιστρέφονται .

SELECT MSysObjects.Name , MSysObjects.DateCreate , MSysObjects.DateUpdate , MSysObjects.Type , MSysObjects.Flags

ΑΠΟ MSysObjects

ΟΠΟΥ MSysObjects.Type = 1 2

Επιστροφή μια λίστα μόνο των πινάκων εκτός συστήματος στη βάση δεδομένων με το παράδειγμα που δίδεται :

SELECT MSysObjects . Όνομα , MSysObjects.DateCreate , MSysObjects.DateUpdate , MSysObjects.Type , MSysObjects.Flags

ΑΠΟ MSysObjects

ΟΠΟΥ MSysObjects.Type = 1 ΚΑΙ MSysObjects.Name Not Like " MSys * "

Η 3

Επιστροφή μια λίστα μόνο τα μη κρυμμένα πίνακες στη βάση δεδομένων εκτελώντας το παρακάτω ερώτημα :

SELECT MSysObjects.Name , MSysObjects.DateCreate , MSysObjects.DateUpdate , MSysObjects . Τύπος , MSysObjects.Flags

ΑΠΟ MSysObjects

ΟΠΟΥ MSysObjects.Type = 1 ΚΑΙ MSysObjects.Flags <> 8
Η 4

Ταξινομήστε τη λίστα των μη - κρυμμένο , πίνακες μη σύστημα χρησιμοποιώντας τον κώδικα SQL παρακάτω :

SELECT MSysObjects.Name , MSysObjects.DateCreate , MSysObjects.DateUpdate , MSysObjects.Type , MSysObjects.Flags

ΑΠΟ MSysObjects

ΟΠΟΥ MSysObjects.Type = 1 ΚΑΙ MSysObjects.Flags <> 8 ΚΑΙ MSysObjects.Name Not Like " MSys * "

ORDER BY MSysObjects.Name
εικόνων Χρησιμοποιήστε τη Λίστα πίνακες σε VBA
5

φορτώσει τη λίστα των πινάκων σε ένα σύνολο αντικειμένων ρεκόρ , χρησιμοποιώντας τον κώδικα VBA φαίνεται παρακάτω :

Dim rsMyTables Όπως DAO.Recordset

Set rsMyTables = CurrentDb.OpenRecordset ( " MyQuery " )
Η 6

Loop μέσω κάθε εγγραφή επέστρεψε στο ερώτημα .

Δημ. rsMyTables Όπως DAO.Recordset

Set rsMyTables = CurrentDb.OpenRecordset ( " MyQuery " )

Do While Not rsMyTables.EOF

«Κώδικας για το χειρισμό των δεδομένων

rsMyTables.MoveNext

Loop
Σελίδα 7

Προσθέστε το όνομα κάθε πίνακα σε ένα drop-down λίστα τροποποιώντας βρόχο while σας :

Dim rsMyTables Όπως DAO.Recordset

Set rsMyTables = CurrentDb.OpenRecordset ( " MyQuery » )

Me.cmbMyComboBox.Clear

Do While Not rsMyTables.EOF

Me.cmbMyComboBox.AddItem rsMyTables ! [ Όνομα ] Ξενοδοχεία

rsMyTables.MoveNext

Loop
8

Κλείστε ρεκόρ σύνολο του αντικειμένου σας , ώστε να απελευθερώνει τη μνήμη που χρησιμοποιεί :

Dim rsMyTables Όπως DAO.Recordset

Set rsMyTables = CurrentDb.OpenRecordset ( " MyQuery " )

Me.cmbMyComboBox.Clear

Do While Not rsMyTables.EOF

Me.cmbMyComboBox.AddItem rsMyTables ! [ Όνομα ]

rsMyTables.MoveNext

Loop

rsMyTables.Close

Σετ rsMyTables = Τίποτα
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα