Σχεδιασμός βάσης δεδομένων. Υποστήριξη βάσεων δεδομένων (Τεχνολογίες πρόσβασης δεδομένων. Δημιουργία εφαρμογής με βάση δεδομένων)

Δημιουργία εφαρμογών για εργασία με βάσεις δεδομένων.

Οι βάσεις δεδομένων χρησιμοποιούνται όταν είναι απαραίτητο να εργαστείτε με μεγάλους όγκους δεδομένων.

Μια σχεσιακή βάση δεδομένων είναι ένα σύνολο πινάκων, διαδικασιών και άλλων αντικειμένων που υποστηρίζουν τη λειτουργία της. Το τραπέζι έχει Ονομα– ένα αναγνωριστικό με το οποίο μπορεί να γίνει αναφορά. Παράδειγμα πίνακα δεδομένων εργαζομένων Pers:

Αριθμός

Τμήμα

Επώνυμο

Ονομα

Επώνυμο

Ετος γέννησης

Πάτωμα

Χαρακτηριστικό γνώρισμα

φωτογραφία

Αριθμ

Τμ

Fam

Nam

Par

Έτος_β

Φύλο

Χαρακτήρας

φωτογραφία

Λογιστική

Ιβάνοφ

Ιβάν

Ιβάνοβιτς

1950

Εργαστήριο 1

Πετρόφ

Πέτρος

Πέτροβιτς

1960

Εργαστήριο 2

Σιντόροφ

Sidor

Σιντόροβιτς

1955

Εργαστήριο 1

Ιβάνοβα

Η Ιρίνα

Ιβάνοβνα

1961

Στήλεςοι πίνακες αντιστοιχούν στα χαρακτηριστικά των αντικειμένων - πεδίων. Κάθε πεδίο χαρακτηρίζεται από ένα όνομα και τον τύπο των δεδομένων που αποθηκεύονται. Ονομα πεδίουείναι ένα αναγνωριστικό που χρησιμοποιείται σε διάφορα προγράμματα για τον χειρισμό δεδομένων. Όπως κάθε αναγνωριστικό, το όνομα του πεδίου μπορεί να αποτελείται μόνο από λατινικά γράμματα, μόνο μία λέξη κ.λπ. (γραμμή 2 στον πίνακα).

Τύπος πεδίουχαρακτηρίζει τον τύπο των δεδομένων που είναι αποθηκευμένα στο πεδίο. Αυτά μπορεί να είναι συμβολοσειρές, αριθμοί, τιμές Boolean, μεγάλα κείμενα (για παράδειγμα, χαρακτηριστικά εργαζομένων), εικόνες (φωτογραφίες εργαζομένων) κ.λπ.

Καθε σειρά τραπεζιούταιριάζει με ένα από τα αντικείμενα. Ονομάζεται εγγραφήκαι περιέχει τις τιμές όλων των πεδίων που χαρακτηρίζουν αυτό το αντικείμενο.

Κατά τη δημιουργία πινάκων βάσεων δεδομένων, είναι σημαντικό να διασφαλίζεται η συνέπεια των πληροφοριών. Αυτό γίνεται συνήθως με την εισαγωγή βασικά πεδία– διασφάλιση της μοναδικότητας κάθε δίσκου. Το πεδίο κλειδιού μπορεί να είναι ένα ή περισσότερα πεδία. Στο παραπάνω παράδειγμα, ένα σύνολο πεδίων θα μπορούσε να γίνει κλειδί Fam, Nam, Par. Αλλά σε αυτήν την περίπτωση, θα ήταν αδύνατο να εισαγάγετε στον πίνακα πληροφορίες για πλήρεις συνονόματους που έχουν το ίδιο επίθετο, όνομα και πατρώνυμο. Επομένως, το πρώτο πεδίο εισήχθη στον πίνακα Αριθμ– ένας αριθμός που μπορεί να γίνει βασικός, διασφαλίζοντας τη μοναδικότητα κάθε εγγραφής.

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

Για την οργάνωση δεδομένων, χρησιμοποιείται η έννοια δείκτης. Το ευρετήριο δείχνει με ποια σειρά Συνιστάται να δείτε προσεκτικά τον πίνακα. Είναι σαν ενδιάμεσος μεταξύ του χρήστηκαι πίνακας:

Τα ευρετήρια μπορούν να είναι πρωταρχικόςΚαι δευτερεύων.
Για παράδειγμα, το κύριο ευρετήριο θα μπορούσε να είναι πεδία που ορίστηκαν ως βασικά πεδία κατά τη δημιουργία της βάσης δεδομένων. Και δευτερεύοντα ευρετήρια μπορούν να δημιουργηθούν από άλλα πεδία τόσο κατά τη δημιουργία της ίδιας της βάσης δεδομένων όσο και αργότερα κατά τη διαδικασία εργασίας με αυτήν. Στα δευτερεύοντα ευρετήρια εκχωρούνται ονόματα - αναγνωριστικά με τα οποία μπορούν να χρησιμοποιηθούν.
Μια βάση δεδομένων συνήθως περιέχει όχι έναν αλλά πολλούς πίνακες. Για παράδειγμα, μια βάση δεδομένων για έναν οργανισμό μπορεί να περιέχει έναν πίνακα των τμημάτων του με τα χαρακτηριστικά καθενός από αυτά.
Dep πίνακας με πεδία ΤμΚαι Proisv

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

Στο παράδειγμα, ο πίνακας κεφαλής μπορεί να είναι Τμ, βοηθητική Pers, και μπορούν να επικοινωνούν σε όλο το πεδίο Τμ, υπάρχει και στους δύο πίνακες.

Κάθε εγγραφή στον κεντρικό πίνακα Τμαντιστοιχίστε αυτές τις βοηθητικές εγγραφές πίνακα Pers,στο οποίο το βασικό πεδίο Τμμε όνομα τμήματος ταιριάζει με το όνομα τμήματος στην τρέχουσα εγγραφή του κύριου πίνακα. Με άλλα λόγια, εάν στην τρέχουσα εγγραφή του κύριου πίνακα στο πεδίο Τμγράφεται «Λογιστική», μετά στον βοηθητικό πίνακα PersΌλα τα αρχεία των λογιστικών υπαλλήλων επισημαίνονται.

Δημιουργούνται βάσεις δεδομένων και τα ερωτήματα προς αυτές υποβάλλονται σε επεξεργασία από συστήματα διαχείρισης βάσεων δεδομένων - DBMS: Paradox, Microsoft Access, FoxPro, Oracle, InterBaseκαι τα λοιπά.

Διαφορετικά DBMS οργανώνουν και αποθηκεύουν βάσεις δεδομένων με διαφορετικούς τρόπους. Το Paradox χρησιμοποιεί ένα αρχείο για κάθε πίνακα. Στη Microsoft Access και στο InterBase, πολλοί πίνακες αποθηκεύονται ως ένα αρχείο. Σε αυτήν την περίπτωση, η βάση δεδομένων είναι το όνομα του αρχείου με τη διαδρομή πρόσβασης σε αυτό. Τα συστήματα πελάτη/διακομιστή (Sybase, Microsoft SQl, Oracle) αποθηκεύουν όλα τα δεδομένα σε ξεχωριστό υπολογιστή και επικοινωνούν με τον πελάτη χρησιμοποιώντας μια ειδική γλώσσα - SQL.

Για να απλοποιηθεί η πρόσβαση σε βάσεις δεδομένων, χρησιμοποιούνται ψευδώνυμα βάσης δεδομένων. Παρατσούκλι (ψευδώνυμο)περιέχει όλες τις απαραίτητες πληροφορίες για την παροχή πρόσβασης στη βάση δεδομένων. Αυτές οι πληροφορίες αναφέρονται μόνο μία φορά κατά τη δημιουργία ενός ψευδώνυμου. Και η εφαρμογή χρησιμοποιεί ένα ψευδώνυμο για να επικοινωνεί με τη βάση δεδομένων. Σε αυτήν την περίπτωση, η εφαρμογή δεν ενδιαφέρεται για το πού βρίσκεται η βάση δεδομένων και συχνά το DBMS που δημιούργησε και διατηρεί αυτήν τη βάση δεδομένων είναι επίσης αδιάφορο. Όταν αλλάζετε σύστημα καταλόγου, διακομιστή κ.λπ. Δεν χρειάζεται να αλλάξετε τίποτα στην εφαρμογή. Αρκεί ο διαχειριστής της βάσης δεδομένων να εισάγει τις κατάλληλες πληροφορίες στο ψευδώνυμο.

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

Οι αλλαγές καταγράφονται στη βάση δεδομένων χρησιμοποιώντας συναλλαγές. Αυτή είναι μια συλλογή εντολών που τροποποιούν τη βάση δεδομένων. Ο χρήστης έχει την επιλογή να ολοκληρώσει τη συναλλαγή είτε κάνοντας όλες τις αλλαγές στην πραγματική βάση δεδομένων είτε επαναφέροντας από αυτήν και επιστρέφοντας στην κατάσταση που ήταν πριν από την έναρξη της συναλλαγής.

ΕγκαταστάσειςDelphi, σχεδιασμένο για την ανάπτυξη και λειτουργία εφαρμογών που χρησιμοποιούν βάσεις δεδομένων:

BDE (Borland Database Engine) – Μηχανή βάσης δεδομένων Borland. Είναι ένα σύνολο βιβλιοθηκών DLL που παρέχουν πρόσβαση χαμηλού επιπέδου σε τοπικές βάσεις δεδομένων και βάσεις δεδομένων πελάτη-διακομιστή. Πρέπει να εγκατασταθεί σε κάθε υπολογιστή που χρησιμοποιεί εφαρμογές βάσης δεδομένων γραμμένες για τους Delphi.

Σύνδεσμοι SQL – προγράμματα οδήγησης για εργασία με απομακρυσμένους διακομιστές δεδομένων (MS SQL Server, Oracle)

Το BDE Administrator είναι ένα βοηθητικό πρόγραμμα για τον ορισμό ψευδωνύμων βάσης δεδομένων (ονόματα), παραμέτρων βάσης δεδομένων και προγραμμάτων οδήγησης βάσης δεδομένων σε έναν συγκεκριμένο υπολογιστή. Όταν εργάζεστε με μια βάση δεδομένων από μια εφαρμογή που δημιουργήθηκε με χρήση των Delphi, η πρόσβαση στη βάση δεδομένων γίνεται με το ψευδώνυμό της. Οι παράμετροι μιας βάσης δεδομένων που ορίζονται από ένα ψευδώνυμο ισχύουν μόνο για αυτήν τη βάση δεδομένων. Οι παράμετροι που έχουν οριστεί για το πρόγραμμα οδήγησης της βάσης δεδομένων ισχύουν για όλες τις βάσεις δεδομένων που χρησιμοποιούν το πρόγραμμα οδήγησης. Επιπλέον, μπορείτε να ορίσετε παραμέτρους κοινές σε όλες τις βάσεις δεδομένων, όπως τη μορφή ημερομηνίας και ώρας, μορφές αναπαράστασης αριθμητικών τιμών, το πρόγραμμα οδήγησης γλώσσας που χρησιμοποιείται κ.λπ.

Επιφάνεια εργασίας βάσης δεδομένων (DBD)) – ένα εργαλείο για τη δημιουργία, την τροποποίηση και την προβολή μιας βάσης δεδομένων. Αυτό το βοηθητικό πρόγραμμα επικεντρώνεται κυρίως στην εργασία με πίνακες σε τοπικά DBMS, όπως το Paradox. Μπορείτε, με ορισμένους περιορισμούς, να δημιουργήσετε και να προβάλετε πίνακες βάσεων δεδομένων που εκτελούνται σε διακομιστές: InterBase, MS SQL Server, Oracle.

Το DBD επιτρέπει στον προγραμματιστή να δημιουργήσει ένα ερώτημα στη βάση δεδομένων χρησιμοποιώντας τη μέθοδο QBE (Query By Example).

Το SQL Explorer είναι ένα καθολικό βοηθητικό πρόγραμμα που συνδυάζει πολλές από τις λειτουργίες του BDE Administrator και του DBD. Με τη βοήθειά του, μπορείτε να δημιουργήσετε και να προβάλετε ψευδώνυμα βάσης δεδομένων, να προβάλετε τις δομές και τα περιεχόμενα των πινάκων βάσης δεδομένων, να δημιουργήσετε ερωτήματα βάσης δεδομένων σε SQL και να δημιουργήσετε λεξικά δεδομένων (πρότυπα πεδίων πίνακα).

Το SQL Monitor είναι ένα εργαλείο για την παρακολούθηση της εκτέλεσης ερωτημάτων SQL.

Μη οπτικά στοιχεία για εργασία με βάσεις δεδομένων – χρησιμοποιούνται για τη σύνδεση της εφαρμογής με πίνακες βάσεων δεδομένων σε τοπικά και κατανεμημένα συστήματα. Βρίσκονται στη σελίδα πρόσβασης δεδομένων της παλέτας στοιχείων. Τα μη οπτικά στοιχεία χρησιμοποιούνται για τη σύνδεση με βάσεις δεδομένων, τη δημιουργία ερωτημάτων σε σχέση με αυτές και τον χειρισμό πινάκων.

Οπτικά στοιχεία για εργασία με βάσεις δεδομένων - σχεδιασμένα για την οπτικοποίηση εγγραφών συνόλων δεδομένων ή των επιμέρους πεδίων τους. Αυτά τα στοιχεία βρίσκονται στη σελίδα Data Controls της παλέτας Components. Χρησιμεύουν ως το κύριο εργαλείο για την ανάπτυξη μιας διεπαφής χρήστη για πρόσβαση σε δεδομένα.

Χαρακτηριστικά προγραμμάτων για εργασία με βάσεις δεδομένων.

Ένα χαρακτηριστικό γνώρισμα των προγραμμάτων που δημιουργούνται με τη χρήση των Delphi για εργασία με βάσεις δεδομένων είναι η απαραίτητη χρήση του BDE σε αυτά (σχεσιακός επεξεργαστής βάσης δεδομένωνΜηχανή βάσης δεδομένων Borland συμπεριλαμβανεται σε Delphi), το οποίο λειτουργεί ως συνδετική γέφυρα μεταξύ του προγράμματος και της βάσης δεδομένων.


ΒΔΕαναλαμβάνει όλη την εργασία χαμηλού επιπέδου για να παρέχει στο πρόγραμμα-πελάτη τα δεδομένα που χρειάζεται, επομένως στη γενική περίπτωση, η αλληλεπίδραση του προγράμματος με τα δεδομένα γίνεται ως εξής:

ΒΔΕδεν είναι μέρος του προγράμματος. Ανάλογα με τον τύπο του DBMS, μπορεί να βρίσκεται στον υπολογιστή-πελάτη ή στο μηχάνημα διακομιστή.

Συνήθως μεταξύ του προγράμματος και ΒΔΕυπάρχει ένα στρώμα στοιχείων που απλοποιούν σημαντικά την ανάπτυξη προγράμματος. Τα μη οπτικά εξαρτήματα λειτουργούν απευθείας με ΒΔΕ, και τρία από αυτά (TTable, TQuery, TStoredProc) χρησιμεύουν ως σύνολα δεδομένων, ενώ τα οπτικά στοιχεία εμφανίζουν τα δεδομένα που τους παρέχονται και χρησιμεύουν για τη δημιουργία μιας βολικής διεπαφής χρήστη. Μεταξύ των συνόλων δεδομένων και των οπτικών στοιχείων υπάρχουν απαραίτητα στοιχεία TDataSource, τα οποία παίζουν το ρόλο των βαλβίδων που ανοίγουν ή κλείνουν τις ροές δεδομένων που ανταλλάσσουν οι πηγές με τα οπτικά στοιχεία (βλ. εικόνα).

Κάποιοι υποστήριξανΤύποι βάσεων δεδομένων Δελφών.

Τοπικές βάσεις δεδομένων και διακομιστή αρχείων.

Στις τοπικές βάσεις δεδομένων, τα δεδομένα βρίσκονται στον υπολογιστή του πελάτη. Σε ένα αρχείο βάσης δεδομένων διακομιστή, τα δεδομένα βρίσκονται σε έναν διακομιστή αρχείων δικτύου.

Η τοπική επιλογή μπορεί να παρέχει μόνο λειτουργία πρόσβασης δεδομένων ενός χρήστη.

Στις βάσεις δεδομένων διακομιστή αρχείων, τα δεδομένα βρίσκονται σε έναν διακομιστή αρχείων δικτύου, στον οποίο μπορούν να έχουν πρόσβαση ταυτόχρονα πολλοί χρήστες. Τα δεδομένα στη βάση δεδομένων αποθηκεύονται σε ένα μόνο αντίγραφο και κάθε πρόγραμμα-πελάτης σε κάθε χρονική στιγμή λειτουργεί με κάποιο τοπικό αντίγραφο των δεδομένων και η διαχείριση δεδομένων βασίζεται εξ ολοκλήρου στα προγράμματα-πελάτες. Είναι αυτοί που πρέπει να φροντίσουν για τον συγχρονισμό των τοπικών αντιγράφων δεδομένων σε κάθε ιστότοπο πελάτη με τα περιεχόμενα της κύριας (και μοναδικής) βάσης δεδομένων.

Όταν εκτελείτε ένα ερώτημα σε μια βάση δεδομένων που βρίσκεται σε έναν διακομιστή αρχείων, στην πραγματικότητα ζητάτε ένα τοπικό αντίγραφο των δεδομένων στον υπολογιστή του χρήστη. Επομένως, πριν από την εκτέλεση του ερωτήματος, τα δεδομένα στο τοπικό αντίγραφο ενημερώνονται πλήρως από την πραγματική βάση δεδομένων. Έτσι, εάν ο πίνακας της βάσης δεδομένων αποτελείται από 10.000 εγγραφές και χρειάζονται μόνο 10 εγγραφές για να ολοκληρωθεί το ερώτημα, και οι 10.000 εγγραφές εξακολουθούν να μεταφέρονται στον πελάτη. Έτσι, το δίκτυο φορτώνεται σοβαρά.

Βάσεις δεδομένων πελάτη-διακομιστή.

Στην αρχιτεκτονική πελάτη-διακομιστή, εμφανίζεται ένας σημαντικός ενδιάμεσος σύνδεσμος μεταξύ του BDE και της βάσης δεδομένων - ο διακομιστής της βάσης δεδομένων (ένα ειδικό πρόγραμμα που διαχειρίζεται τη βάση δεδομένων).

Ο πελάτης δημιουργεί ένα αίτημα στον διακομιστή στη γλώσσα ερωτημάτων SQL (Γλώσσα δομημένου ερωτήματος -δομημένη γλώσσα ερωτημάτων), η οποία είναι το βιομηχανικό πρότυπο για σχεσιακές βάσεις δεδομένων. Ο διακομιστής SQL παρέχει ερμηνεία της αίτησης, την εκτέλεσή της, τη δημιουργία του αποτελέσματος και την παράδοση αυτού του αποτελέσματος στον πελάτη. Σε αυτήν την περίπτωση, οι πόροι του υπολογιστή-πελάτη δεν εμπλέκονται στη φυσική εκτέλεση του αιτήματος: ο υπολογιστής-πελάτης στέλνει το αίτημα μόνο στη βάση δεδομένων διακομιστή και λαμβάνει το αποτέλεσμα, μετά το οποίο το ερμηνεύει ως απαραίτητο και το παρουσιάζει στον χρήστη . Μόνο τα δεδομένα που χρειάζεται ο πελάτης μεταδίδονται μέσω του δικτύου.

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

Δημιουργήστε και προβάλετε ψευδώνυμα βάσης δεδομένων.

  1. Με τη χρήσηDBD.

Συνήθως μια πρόκληση Επιφάνεια εργασίας βάσης δεδομένωνπεριλαμβάνεται στο κύριο μενού των Δελφών στην περιοχή Εργαλεία. Εάν αυτό δεν γίνει, μπορείτε να το ενεργοποιήσετε εκεί με την εντολή Εργαλεία|Διαμόρφωση εργαλείων... (αρχείο DBD32.exe).

Το DBD σάς επιτρέπει να δημιουργήσετε πίνακες βάσεων δεδομένων ορισμένων DBMS, να ορίσετε και να αλλάξετε τη δομή τους.

Μπορείτε να δημιουργήσετε και να προβάλετε ψευδώνυμα εκτελώντας την εντολή Tools|Alias Manager. Εμφανίζεται το παράθυρο Alias ​​​​Manager:


Όταν επιλέγετε ένα ψευδώνυμο στη λίστα Ψευδώνυμο βάσης δεδομένων, ο τύπος προγράμματος οδήγησης στην αναπτυσσόμενη λίστα αλλάζει αυτόματα


  1. Με τη χρήσηΔιαχειριστής ΒΔΕ.


  1. Με τη χρήσηΕξερεύνηση βάσεων δεδομένων (SQL Explorer).

Αυτό το πρόγραμμα καλείται από το κύριο μενού των Δελφών με την εντολή Βάση δεδομένων| Εξερευνώ.


Το Delphi είναι ένα περιβάλλον ανάπτυξης που χρησιμοποιεί τη γλώσσα προγραμματισμού Delphi (ξεκινώντας από την έκδοση 7, η γλώσσα στο περιβάλλον ονομάζεται Delphi, προηγουμένως Object Pascal), που αναπτύχθηκε από την Borland και αρχικά εφαρμόστηκε στο πακέτο Borland Delphi, από το οποίο έλαβε το σημερινό της όνομα το 2003. Το Object Pascal είναι ουσιαστικά διάδοχος της γλώσσας Pascal με αντικειμενοστρεφείς επεκτάσεις.

Το Delphi είναι το βέλτιστο εργαλείο για τη δημιουργία εφαρμογών βάσης δεδομένων. Βέλτιστο, γιατί υποστηρίζει την τεχνολογία οπτικής ανάπτυξης, η οποία μπορεί να μειώσει σημαντικά τον χρόνο ανάπτυξης, διατηρώντας παράλληλα καλή ποιότητα και αξιοπιστία του προϊόντος λογισμικού. Η γλωσσική δομή του Delphi σάς επιτρέπει να αποφεύγετε κρυφά λάθη.

Χαρακτηριστικά της οικογένειας Delphi 7:

*Περιβάλλον ταχείας ανάπτυξης εφαρμογών που ενσωματώνει εργαλεία για τη μοντελοποίηση της ανάπτυξης και της ανάπτυξης εφαρμογών ηλεκτρονικού εμπορίου και υπηρεσιών Ιστού.

*Υποστήριξη γλωσσών προγραμματισμού για Win32 (Delphi και C/C++) και για .NET (Delphi και C#) σε ένα ενιαίο περιβάλλον ανάπτυξης, το οποίο διευκολύνει τη συντήρηση και τη δημιουργία νέων εφαρμογών Win32 και τον πιο εύκολο έλεγχο τεχνολογιών .NET.

*Η ευκαιρία για τους παραδοσιακούς προγραμματιστές Windows και Java να αναπτύξουν εφαρμογές .NET χωρίς να εγκαταλείψουν τα εργαλεία που χρησιμοποιούν, διατηρώντας τις ίδιες δεξιότητες και χρησιμοποιώντας παρόμοιες έννοιες προγραμματισμού.

*Το νέο σύστημα προτύπων κώδικα και άλλες καινοτομίες στο περιβάλλον ανάπτυξης βελτιώνουν ποιοτικά την εργασία με πηγαίους κώδικες και αυξάνουν την παραγωγικότητα ανάπτυξης.

Ο Microsoft SQL Server 2000 είναι μια ολοκληρωμένη βάση δεδομένων και ανάλυση δεδομένων που προσφέρει για γρήγορη δημιουργία επεκτάσιμων λύσεων ηλεκτρονικού εμπορίου, επιχειρηματικών εφαρμογών και αποθηκών δεδομένων.

Μειώνει σημαντικά τον χρόνο διάθεσης στην αγορά αυτών των λύσεων, ενώ παρέχει επεκτασιμότητα για την κάλυψη των πιο απαιτητικών απαιτήσεων.

Το πακέτο Delphi αποτελεί συνέχεια της σειράς μεταγλωττιστών γλώσσας Pascal της Borland Corporation. Η Pascal ως γλώσσα είναι πολύ απλή και ο αυστηρός έλεγχος τύπων δεδομένων βοηθά στον έγκαιρο εντοπισμό σφαλμάτων και σας επιτρέπει να δημιουργείτε γρήγορα αξιόπιστα και αποτελεσματικά προγράμματα.

Η ανάπτυξη εφαρμογών βάσης δεδομένων είναι μια από τις πιο περιζήτητες δυνατότητες του προγραμματιστικού περιβάλλοντος Delphi. Η ισχύς και η ευελιξία των Delphi κατά την εργασία με βάσεις δεδομένων βασίζεται σε έναν πυρήνα χαμηλού επιπέδου - το Borland Database Engine (BDE). Η διεπαφή του με τα προγράμματα εφαρμογών ονομάζεται Integrated Database Application Programming Interface (IDAPI). Το BDE σάς επιτρέπει να έχετε πρόσβαση σε δεδομένα χρησιμοποιώντας τόσο την παραδοσιακή προσέγγιση προσανατολισμένη στην εγγραφή (πλοήγηση) όσο και την προσέγγιση προσανατολισμένη σε σύνολο που χρησιμοποιείται σε διακομιστές βάσεων δεδομένων SQL.

Η βιβλιοθήκη αντικειμένων περιέχει ένα σύνολο οπτικών στοιχείων που απλοποιούν σημαντικά την ανάπτυξη εφαρμογών για DBMS με αρχιτεκτονική πελάτη-διακομιστή. Τα αντικείμενα ενσωματώνουν το χαμηλότερο επίπεδο - Μηχανή βάσης δεδομένων Borland.

Υπάρχουν ειδικά σύνολα στοιχείων υπεύθυνα για την πρόσβαση σε δεδομένα και στοιχεία που εμφανίζουν δεδομένα. Τα στοιχεία πρόσβασης δεδομένων σάς επιτρέπουν να συνδεθείτε στη βάση δεδομένων, να ανακτήσετε, να αντιγράψετε δεδομένα κ.λπ.

Τα στοιχεία οπτικοποίησης δεδομένων σάς επιτρέπουν να εμφανίζετε δεδομένα με τη μορφή πινάκων, πεδίων και λιστών. Τα δεδομένα που εμφανίζονται μπορεί να είναι σε μορφή κειμένου, γραφικών ή δωρεάν.

Οι πίνακες αποθηκεύονται στη βάση δεδομένων. Ορισμένα DBMS αποθηκεύουν τη βάση δεδομένων με τη μορφή πολλών ξεχωριστών αρχείων που αντιπροσωπεύουν πίνακες (βασικά όλα τα τοπικά DBMS), ενώ άλλα αποτελούνται από ένα μόνο αρχείο που περιέχει όλους τους πίνακες και τα ευρετήρια (InterBase).

Τα αντικείμενα βάσης δεδομένων του Delphi βασίζονται σε SQL και περιλαμβάνουν την πλήρη ισχύ του μηχανισμού βάσης δεδομένων Borland. Οι Delphi περιλαμβάνουν επίσης Borland SQL Link, επομένως η πρόσβαση στις βάσεις δεδομένων Oracle, Sybase, Informix και InterBase είναι εξαιρετικά αποτελεσματική. Επιπλέον, οι Delphi περιλαμβάνουν έναν τοπικό διακομιστή Interbase, έτσι ώστε οι εφαρμογές να μπορούν να αναπτυχθούν εκτός σύνδεσης και να επεκταθούν σε οποιονδήποτε εξωτερικό διακομιστή SQL.

Επεκτασιμότητα στην πράξη - η ίδια εφαρμογή μπορεί να χρησιμοποιηθεί τόσο για τοπικές όσο και για πιο σοβαρές επιλογές πελάτη-διακομιστή.

Παρόλο που το Delphi δεν έχει τη δική του μορφή πίνακα βάσης δεδομένων, παρέχει ωστόσο ισχυρή υποστήριξη για μεγάλο αριθμό διαφορετικών DBMS - τόσο τοπικών (για παράδειγμα, dBase ή Paradox) όσο και βιομηχανικών (για παράδειγμα, Sybase ή InterBase).

Ας δημιουργήσουμε μια απλή εφαρμογή βάσης δεδομένων που εμφανίζει πληροφορίες από τον πίνακα "Τουρίστες" και την εγγραφή του πίνακα "Πληροφορίες τουριστών" από τη βάση δεδομένων της Microsoft Access που σχετίζεται με την τρέχουσα εγγραφή του πίνακα "Τουρίστες".

Για να το κάνουμε αυτό, ας δημιουργήσουμε μια κενή εφαρμογή Windows. Εμφάνιση περιβάλλοντος

Η ανάπτυξη φαίνεται στο Σχήμα 39.

Ρύζι. 39. Λευκή εφαρμογή

Το Σχήμα 39 υπογραμμίζει την ομάδα στοιχείων "Δεδομένα", η οποία περιέχει στοιχεία για πρόσβαση και χειρισμό δεδομένων.

Η σύνδεση των δεδομένων της βάσης δεδομένων στη φόρμα πραγματοποιείται από το στοιχείο «Πηγή δέσμευσης». Ας το μεταφέρουμε στη φόρμα. Αφού το τοποθετήσετε στη φόρμα, το περιβάλλον ανάπτυξης παίρνει την παρακάτω μορφή (Εικ. 40).

Ρύζι. 40. Στοιχείο Binding Source στη φόρμα

Το στοιχείο δεν είναι οπτικό, επομένως εμφανίζεται σε έναν πρόσθετο πίνακα. Η κύρια ιδιότητα του στοιχείου είναι η ιδιότητα DataSource, η οποία οδηγεί στην πηγή δεδομένων. Από προεπιλογή, η ιδιότητα είναι κενή, επομένως πρέπει να διαμορφώσετε την τιμή της. Όταν επιλέγετε αυτήν την ιδιότητα στο παράθυρο ιδιοτήτων, εμφανίζεται το ακόλουθο παράθυρο (Εικ. 41).

Ρύζι. 41. Κατάλογος πηγών δεδομένων

Η λίστα είναι προς το παρόν κενή, επομένως πρέπει να δημιουργήσετε μια νέα πηγή δεδομένων επιλέγοντας την εντολή Προσθήκη προέλευσης δεδομένων έργου για να δημιουργήσετε μια νέα πηγή δεδομένων και να συνδεθείτε σε αυτήν. Εμφανίζεται το ακόλουθο πλαίσιο διαλόγου (Εικ. 42).

Ρύζι. 42. Κατάλογος πηγών δεδομένων

Αυτό το παράθυρο διαλόγου παρέχει την ακόλουθη επιλογή πηγών δεδομένων:

Βάση δεδομένων - Βάση δεδομένων;

Υπηρεσία - Μια υπηρεσία είναι κάποια υπηρεσία που παρέχει δεδομένα. Τις περισσότερες φορές αυτή είναι μια υπηρεσία Ιστού.

Αντικείμενο - Αντικείμενο για την επιλογή ενός αντικειμένου που θα δημιουργήσει δεδομένα και αντικείμενα για εργασία με αυτό.

Στην περίπτωσή μας, πρέπει να επιλέξετε το στοιχείο "Βάση δεδομένων". Εμφανίζεται ένα παράθυρο για την επιλογή μιας σύνδεσης δεδομένων (Εικ. 43).

Ρύζι. 43. Επιλογή σύνδεσης δεδομένων

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

Η αναπτυσσόμενη λίστα διαλόγου περιέχει όλες τις συνδέσεις που δημιουργήθηκαν προηγουμένως. Εάν η απαιτούμενη σύνδεση δεν βρίσκεται στη λίστα, τότε θα πρέπει να χρησιμοποιήσετε το κουμπί «Νέα σύνδεση». Πατώντας το κουμπί εμφανίζεται το ακόλουθο παράθυρο διαλόγου (Εικ. 44).

Σε αυτό το παράθυρο διαλόγου, επιλέγετε τον τύπο προέλευσης δεδομένων (σε αυτήν την περίπτωση, Microsoft Access), το όνομα της βάσης δεδομένων (σε αυτήν την περίπτωση, το όνομα και τη θέση του αρχείου βάσης δεδομένων) και το όνομα χρήστη και τον κωδικό πρόσβασης που χρησιμοποιούνται για τη σύνδεση στη βάση δεδομένων. Το κουμπί "Advanced" σάς επιτρέπει να ορίσετε μεγάλο αριθμό παραμέτρων που σχετίζονται με διάφορα μέρη του κινητήρα ADO. Η χρήση του κουμπιού "Δοκιμή σύνδεσης" θα διασφαλίσει ότι οι παράμετροι που εισάγατε είναι σωστές και ότι η σύνδεση λειτουργεί.

Ρύζι. 44. Δημιουργία νέας σύνδεσης

Το τελευταίο βήμα του διαλόγου είναι να επιλέξετε αυτούς τους πίνακες ή άλλα αντικείμενα βάσης δεδομένων που χρειάζονται σε αυτήν την προέλευση δεδομένων. Το παράθυρο επιλογής φαίνεται στο Σχήμα 45.

Ρύζι. 45. Επιλογή των απαραίτητων πινάκων

Σε αυτό το παράθυρο, επιλέγονται οι πίνακες «Τουρίστες» και «Πληροφορίες τουριστών». Δεδομένου ότι στη βάση δεδομένων δεν δημιουργήθηκαν άλλα αντικείμενα εκτός από πίνακες, στην Εικόνα 45 εμφανίζονται μόνο πίνακες. Αυτό ολοκληρώνει τη δημιουργία της πηγής δεδομένων. Αφού κάνετε κλικ στο κουμπί "Τέλος", εμφανίζεται ένα στοιχείο DataSet δίπλα στο στοιχείο BindingSource στη φόρμα.

Τώρα τα δεδομένα που συνδέονται παραπάνω πρέπει να εμφανίζονται στη φόρμα. Ο απλούστερος τρόπος εμφάνισης δεδομένων είναι να χρησιμοποιήσετε το στοιχείο DataGridView από την ομάδα στοιχείων Data. Το στοιχείο είναι οπτικό και μοιάζει με αυτό στη φόρμα (Εικ. 46).

Ρύζι. 46. ​​Στοιχείο DataGridView

Εμφανίζεται αμέσως το παράθυρο ρυθμίσεων στοιχείου, το οποίο καθορίζει τις δυνατότητες επεξεργασίας δεδομένων του: «Ενεργοποίηση προσθήκης», «Ενεργοποίηση επεξεργασίας», «Ενεργοποίηση διαγραφής». η δυνατότητα αλλαγής της ακολουθίας στηλών: "Ενεργοποίηση της δυνατότητας αλλαγής της σειράς των στηλών" ("Ενεργοποίηση αναδιάταξης στηλών"). καθώς και τη δυνατότητα προσάρτησης στο μητρικό δοχείο.

Προκειμένου το στοιχείο να εμφανίζει δεδομένα, πρέπει να επιλέξετε μια πηγή δεδομένων στην αναπτυσσόμενη λίστα. Επιλέγοντας την αναπτυσσόμενη λίστα εμφανίζεται το ακόλουθο παράθυρο διαλόγου (Εικ. 47).

Ρύζι. 47. Επιλογή προέλευσης δεδομένων για το DataGridView

Σε αυτήν την περίπτωση, επιλέξαμε τον πίνακα «Τουρίστες» ως πηγή δεδομένων. Αυτή η επιλογή αλλάζει τη μορφή οθόνης ως εξής (Εικ. 48).

Ρύζι. 48. Το στοιχείο DataGridView εμφανίζει τη δομή του πίνακα

Το σχήμα δείχνει ότι έχει εμφανιστεί ένα άλλο στοιχείο BindingSource και ένα στοιχείο TableAdapter που λειτουργεί με τον πίνακα "Τουρίστες". Λάβετε υπόψη ότι κατά τη διάρκεια του σχεδιασμού ή κατά τη διαδικασία ανάπτυξης, τα δεδομένα από τον πίνακα δεν εμφανίζονται.

Τώρα πρέπει να εμφανίσετε τα δεδομένα από τον συνδεδεμένο πίνακα «Πληροφορίες Τουρισμού». Για να το κάνετε αυτό, τοποθετήστε ένα άλλο στοιχείο DataGridView στη φόρμα και επιλέξτε το ακόλουθο ως πηγή δεδομένων (Εικ. 49).

Ρύζι. 49. Επιλογή προέλευσης δεδομένων για το δεύτερο DataGridView

Εδώ, η πηγή δεδομένων δεν είναι ο ίδιος ο πίνακας «Πληροφορίες Τουρισμού», αλλά η σύνδεση (Πηγή Δέσμευσης) μεταξύ των πινάκων «Τουρίστες» και «Τουριστικές Πληροφορίες». Αυτή η επιλογή διασφαλίζει ότι επιλέγονται μόνο εκείνες οι σειρές από τον πίνακα Πληροφορίες Τουριστών που σχετίζονται με την τρέχουσα σειρά στον πίνακα Τουρίστες. Αυτή η επιλογή διασφαλίζει επίσης ότι τα σχετικά δεδομένα ενημερώνονται και διαγράφονται σωστά. Η λειτουργία της εφαρμογής που προκύπτει φαίνεται στο Σχήμα 50.

Ρύζι. 50. Εφαρμογή βάσης δεδομένων στην εργασία

Η πλοήγηση στα δεδομένα χρησιμοποιώντας τα πλήκτρα βέλους είναι δύσκολη. Για να απλοποιηθεί η πλοήγηση δεδομένων, υπάρχει ένα στοιχείο BindingNavigator. Ας το τοποθετήσουμε στη φόρμα (Εικ. 51).

Ρύζι. 51. Στοιχείο BindingNavigator στη φόρμα

Αυτό το στοιχείο σάς επιτρέπει να πλοηγηθείτε μεταξύ εγγραφών πίνακα, να προσθέσετε και να διαγράψετε σειρές πίνακα. Η λειτουργικότητα και η εμφάνιση του στοιχείου μπορούν να προσαρμοστούν επειδή είναι μια λωρίδα μενού ToolStripContainer.

Η ιδιότητα που καθορίζει τον πίνακα μέσω του οποίου εκτελείται η πλοήγηση είναι η ιδιότητα BindingSource. Ας ορίσουμε την τιμή αυτής της ιδιότητας σε "touristsBindingSource". Κατά τη λειτουργία, το εξάρτημα μοιάζει με αυτό (Εικ. 52).

Ρύζι. 52. Στοιχείο BindingNavigator στην εργασία

Η επεξεργασία δεδομένων στα κελιά του στοιχείου DataGridView με κατάλληλες ρυθμίσεις είναι δυνατή, αλλά είναι άβολη και όχι λογική. Συγκεκριμένα, είναι δύσκολο να ελέγξετε τις τιμές που έχουν εισαχθεί για σφάλματα. Επομένως, για τον πίνακα "Τουρίστες" θα δημιουργήσουμε μια φόρμα οθόνης που σας επιτρέπει να εμφανίζετε δεδομένα σε στοιχεία TextBox και να τα επεξεργάζεστε. Για να το κάνετε αυτό, τοποθετήστε ένα κοντέινερ τύπου Panel στη φόρμα και πάνω του τρία στοιχεία TextBox ως εξής (Εικ. 53).

Ρύζι. 53. Πίνακας οθόνης για επεξεργασία καταχωρήσεων στον πίνακα «Τουρίστες».

Τώρα πρέπει να συνδέσετε τα στοιχεία TextBox στα αντίστοιχα πεδία του πίνακα "Τουρίστες". Για να το κάνουμε αυτό, χρησιμοποιούμε την ιδιότητα από την ομάδα DataBindings - Advanced, που φαίνεται στην Εικόνα 54.

Ρύζι. 54. Ιδιότητα "DataBindings - Advanced"

Η επιλογή αυτής της ιδιότητας οδηγεί στην εμφάνιση του διαλόγου που φαίνεται στην Εικόνα 55. Αυτό το παράθυρο διαλόγου σάς επιτρέπει όχι μόνο να δεσμεύετε δεδομένα, αλλά και να ορίζετε ένα συμβάν εντός του οποίου θα ενημερώνονται τα δεδομένα, καθώς και να μορφοποιείτε τα δεδομένα κατά την έξοδο τους.

Για το κορυφαίο στοιχείο TextBox, στην αναπτυσσόμενη λίστα Binding, επιλέξτε "touristsBmdmgSource" ως πηγή δεδομένων και το πεδίο προέλευσης ως "Επώνυμο". Για το μεσαίο και το κάτω στοιχείο TextBox, επιλέξτε την ίδια προέλευση δεδομένων και τα πεδία «Όνομα» και «Πατρώνυμο», αντίστοιχα.

Η αναπτυγμένη εφαρμογή σε λειτουργία μοιάζει με αυτό (Εικ. 56).

Ρύζι. 55. Παράθυρο διαλόγου για την ιδιότητα "DataBindings - Advanced".

Ρύζι. 56. Δέσμευση δεδομένων σε οπτικά στοιχεία

Ωστόσο, όταν γίνονται αλλαγές, όλα τα νέα δεδομένα παραμένουν μόνο στη φόρμα. Δεν αποθηκεύονται στη βάση δεδομένων και όταν καλείται ξανά η εφαρμογή, φυσικά, θα λείπουν. Αυτό συμβαίνει επειδή τα δεδομένα φορτώθηκαν σε ένα αντικείμενο DataSet, το οποίο είναι ένα αντίγραφο στη μνήμη του πίνακα. Όλες οι ενέργειες εκτελούνται με αυτό το αντίγραφο. Για να αντικατοπτρίζονται οι αλλαγές στη βάση δεδομένων, πρέπει να εκτελέσετε τη μέθοδο ενημέρωσης της κλάσης TableAdapter. Έτσι, στην εφαρμογή που αναπτύσσεται, είναι απαραίτητο να τοποθετήσετε το κουμπί «Ενημέρωση» και να γράψετε τον ακόλουθο κώδικα προγράμματος στο πρόγραμμα χειρισμού συμβάντων Click:

travelsTableAdapterUpdate(bDTur_firmDataSet); information_about_touristsTableAdapter.Update(bDTur_firmDataSet);

Αυτός ο κωδικός ενημερώνει τις πληροφορίες στους πίνακες Τουριστών και Πληροφορίες Τουριστών που παρέχονται από την πηγή δεδομένων. Σημειώστε ότι αυτή η μέθοδος είναι υπερφορτωμένη και οι παραλλαγές της σάς επιτρέπουν να ενημερώσετε τόσο μια μεμονωμένη σειρά πίνακα όσο και μια ομάδα σειρών.

Όπως αναφέρθηκε παραπάνω, η σωστή χρήση εξειδικευμένων στοιχείων τα τοποθετεί ως προς την απόδοση σχεδόν στο ίδιο επίπεδο με τις κλήσεις API του επιλεγμένου DBMS. Κατά τη γνώμη μου, η χρήση του API δικαιολογείται στη σπάνια περίπτωση που οι δυνατότητες ακόμη και συγκεκριμένων στοιχείων για ανάπτυξη δεν είναι αρκετές, αν και αυτό είναι εξαιρετικά απίθανο, ή εάν τέτοια στοιχεία δεν είναι διαθέσιμα για την πλατφόρμα για την οποία διεξάγεται η ανάπτυξη έξω (Sun Solaris). Δημιουργία ερωτημάτων στη βάση δεδομένων. Έχοντας επιλέξει μια στρατηγική πρόσβασης δεδομένων και αποφασίσαμε για την αρχιτεκτονική της εφαρμογής, μπορούμε να στρέψουμε την προσοχή μας στο πώς θα τη χρησιμοποιήσουμε. Ο κύριος κανόνας είναι ότι όσο λιγότερα δεδομένα ζητήσετε από τον διακομιστή, τόσο πιο γρήγορα θα εκτελεστεί η εφαρμογή σας. Φυσικά, το να ζητάτε από τον διακομιστή λιγότερα δεδομένα από αυτά που θέλει να δει ο χρήστης ταυτόχρονα είναι παράλογο, επομένως η πρώτη ερώτηση θα πρέπει να είναι "τι δεδομένα χρειάζονται για κάθε ενότητα του συστήματος;" Οι προγραμματιστές που μετακινούνται από βάσεις δεδομένων επιτραπέζιων υπολογιστών πρέπει να ξεπεράσουν την προσανατολισμένη στον πίνακα προβολή των βάσεων δεδομένων. Η βάση δεδομένων InterBase περιέχει αναμφίβολα πίνακες. Αλλά όταν σχεδιάζετε ένα πρόγραμμα, δεν το βλέπετε, βλέπετε μόνο το αποτέλεσμα της εκτέλεσης του ερωτήματος SQL. Μπορείτε, φυσικά, να γράψετε ένα ερώτημα που να επιστρέφει όλες τις εγγραφές από τον πίνακα (τουλάχιστον αυτές που είναι ορατές σε μια δεδομένη συναλλαγή):

ΕΠΙΛΟΓΗ * ΑΠΟ ΚΑΠΟΙΟΥΣ_ΠΙΝΑΚΕΣ

Αλλά στις περισσότερες περιπτώσεις, ένα τέτοιο αίτημα θα επιστρέψει σημαντικά περισσότερα δεδομένα από αυτά που απαιτούνται για τη βέλτιστη λειτουργία της διεπαφής χρήστη και την επεξεργασία των επιχειρηματικών διαδικασιών. Παρεμπιπτόντως, ένα τέτοιο ερώτημα δεν χρησιμοποιεί τόσο χρήσιμες λειτουργίες InterBase/Firebird όπως η δυνατότητα σύνδεσης (JOIN) και ταξινόμησης (ORDER BY) του συνόλου δεδομένων που προκύπτει.

Ζητήστε λιγότερα δεδομένα - αποκτήστε μεγαλύτερη ταχύτητα. Μπορεί να μην χρειάζεστε όλες τις στήλες του πίνακα για να εκτελέσετε ορισμένες εργασίες στο πρόγραμμά σας. Στην πραγματικότητα, δεν πρέπει να χρησιμοποιείτε συχνά το σύμβολο "*" σε επιλεγμένα ερωτήματα, είναι προτιμότερο να χρησιμοποιείτε απευθείας απαρίθμηση πεδίων. Αυτή η μέθοδος βασίζεται στο γεγονός ότι ακόμα κι αν χρειάζομαι όλες τις στήλες του πίνακα, δεν χρειάζομαι τις στήλες του πίνακα που θα προστεθούν στο μέλλον όταν ολοκληρώσω αυτό το μέρος του προγράμματος. Ο καθορισμός συγκεκριμένων στηλών στο ερώτημα διασφαλίζει ότι λαμβάνω μόνο τις στήλες που δήλωσα στο ερώτημα, ακόμα κι αν η δομή του πίνακα εξελιχθεί περαιτέρω. Ομοίως, ακόμα κι αν ο χρήστης χρειάζεται πραγματικά κάθε εγγραφή σε έναν πίνακα, δεν χρειάζεται να τα δει όλα σε μια χρονική στιγμή. Μπορεί να είναι εξαιρετικά άβολο για έναν χρήστη να αναζητήσει πεδία στη μέση ενός πλέγματος δεδομένων σε έναν πίνακα με μεγαλύτερο από τον μέσο αριθμό εγγραφών. Ας υποθέσουμε ότι εάν έχετε περισσότερες από 100 εγγραφές στον πίνακά σας, θα πρέπει ήδη να σκεφτείτε προσεκτικά τη σχεδίαση της εφαρμογής σας.
Σε τι συνοψίζονται όλα αυτά; Αυτό είναι το εξής: όσο λιγότερα δεδομένα ζητάτε και στέλνετε, τόσο πιο γρήγορα θα λειτουργεί η εφαρμογή σας, ακόμη και σε δίκτυα όχι πολύ υψηλής ταχύτητας. Ακολουθούν ορισμένες πρακτικές τεχνικές που μπορείτε να χρησιμοποιήσετε για να μειώσετε τον όγκο των δεδομένων που επιλέγετε.

Παρέχετε στον χρήστη καλά εργαλεία για να βρει αρχεία που τον ενδιαφέρουν. Εάν η λίστα είναι πολύ μεγάλη για να εμφανιστεί σε μια ενιαία συνεχόμενη μορφή, χωρίστε την σε λογικές σελίδες, σε πίνακα με το πρώτο γράμμα από το Α έως το Ω. Εάν σε αυτήν την περίπτωση οι λίστες είναι πολύ μεγάλες, παρέχετε στον χρήστη ισχυρά εργαλεία φιλτραρίσματος δεδομένων για να περιορίσετε το σύνολο εγγραφών που προκύπτει. Για να εφαρμόσετε την αναζήτηση δεδομένων στην εφαρμογή, μπορείτε να υιοθετήσετε τις μεθόδους που χρησιμοποιούνται για την αναζήτηση ιστοσελίδων. Όταν δίνεται στον χρήστη ένα σύνολο εγγραφών, ακόμη και αν είναι σχετικά μικρό, αρκεί να χρησιμοποιήσει ένα ή δύο πεδία κλειδιών για να σχηματίσει ένα φίλτρο ερωτήματος. Αφήστε την εφαρμογή να έχει ένα ξεχωριστό παράθυρο ή μέρος του παραθύρου όπου ο χρήστης μπορεί να δει όλα τα δεδομένα στην εγγραφή εάν βρήκε αυτό που έψαχνε. Προσπαθήστε επίσης να χρησιμοποιήσετε συνδέσεις πινάκων (JOIN) σε ερωτήματα αντί για πεδία αναζήτησης σε φόρμες όπου είναι δυνατόν. Παρόλο που είναι δυνατή η βελτιστοποίηση της εκτέλεσης του συνόλου TDataset. Αναζήτηση, ακόμη και αυτή η βελτιωμένη μέθοδος δεν θα λειτουργήσει γρηγορότερα από τη σύνδεση πινάκων (JOIN) - δεν χρειάζεται να αναφέρετε καθόλου την εργασία της μη τροποποιημένης μεθόδου.



Έχετε ερωτήσεις;

Αναφέρετε ένα τυπογραφικό λάθος

Κείμενο που θα σταλεί στους συντάκτες μας: