ACC: Τρόπος για να ορίσετε την τιμή QueryTimeout για συνδέσεις ODBC

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 153756 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Περίληψη

ΠΡΟΣΟΧΗ: Αυτό το άρθρο περιέχει πληροφορίες σχετικά με την επεξεργασία του μητρώου. Πριν να επεξεργαστείτε το μητρώο, πρέπει πρώτα να δημιουργήσετε ένα αντίγραφο ασφαλείας των αρχείων μητρώου (System.dat και User.dat). Και οι δύο είναι κρυφά αρχεία στο φάκελο των Windows.

Για προχωρημένους: Απαιτεί ειδικό κωδικοποίησης, διαλειτουργικότητας και ικανότητες πολλών χρηστών.

Το άρθρο αυτό παρουσιάζει πώς μπορείτε να ορίσετε την ιδιότητα QueryTimeout για ερωτήματα που εκτελούνται από προελεύσεις δεδομένων ODBC.

Περισσότερες πληροφορίες

Όταν χρησιμοποιείτε μια βάση δεδομένων ODBC, όπως ο Microsoft SQL Server, ίσως υπάρχουν καθυστερήσεις λόγω του δικτύου κυκλοφορίας ή έντονη χρήση του διακομιστή ODBC. Αντί να περιμένει απεριόριστα, μπορείτε να καθορίσετε πόσο χρόνο αναμονής πριν από το μηχανισμό διαχείρισης βάσεων δεδομένων Microsoft Jet, παράγει σφάλμα. Η προεπιλεγμένη ρύθμιση της ιδιότητας QueryTimeout είναι 60 δευτερόλεπτα. Αυτή η ρύθμιση δεν είναι αρκετά μεγάλη για να επιτρέψετε σε ορισμένα ερωτήματα για να εκτελεστεί από προελεύσεις δεδομένων ODBC. Τις ακόλουθες δύο μεθόδους δείχνουν πώς μπορείτε να αλλάξετε την ιδιότητα QueryTimeout.

ΣΗΜΕΙΩΣΗ: Όταν χρησιμοποιείτε τη μέθοδο 1 για να αλλάξετε την ιδιότητα QueryTimeout, η τιμή θα οριστεί για ένα συγκεκριμένο αντικείμενο QueryDef. Όταν δημιουργείτε ένα νέο ερώτημα μέσω της διασύνδεσης χρήστη σε Microsoft Access 97, η ιδιότητα QueryTimeout θα προεπιλεγμένη 60.

ΣΗΜΕΙΩΣΗ: Όταν ακολουθώντας τα βήματα που περιέχονται σε μέθοδο 2 για να ορίσετε την τιμή QueryTimeout μέσα στο μητρώο, οποιοδήποτε ερώτημα νέους και υπάρχοντες τη Microsoft Access θα συνεχίσει να εμφανίζεται η τιμή 60 για την ιδιότητα QueryTimeout. Εάν η τιμή που ορίζεται μέσω του μητρώου είναι μεγαλύτερη από την τιμή που έχει οριστεί μέσα στο μεμονωμένο ερώτημα, η Microsoft Access θα χρησιμοποιήσει την τιμή μέσα στο μητρώο, για να προσδιορίσετε πόσο χρόνο αναμονής πριν από ένα QueryTimeout.

Μέθοδος 1

Δημιουργήστε μια υπορουτίνα για να ορίσετε την ιδιότητα.

Δημιουργήστε και εκτελέστε την ακόλουθη υπορουτίνα, όταν ανοίγετε τη βάση δεδομένων σας:
   Sub SetTimeout()
      Dim Mydb as Database
      Set Mydb=CurrentDB
      MYdb.QueryTimeout=120
  End Sub
				

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

ΣΗΜΕΙΩΣΗ: Εάν αντιμετωπίζετε προβλήματα με την ιδιότητα QueryTimeout, ίσως χρειαστεί να κάνετε αναβάθμιση στην πιο πρόσφατη έκδοση του το μηχανισμό διαχείρισης βάσεων δεδομένων Microsoft Jet για την έκδοση της Microsoft Access. Μέχρι τότε, εάν αντιμετωπίζετε προβλήματα με την CurrentDB.QueryTimeout, θα ήταν επίσης δοκιμάστε να χρησιμοποιήσετε DBEngine (0)(0). Ωστόσο, συνιστάται να έχετε την τρέχουσα έκδοση του μηχανισμού βάσης δεδομένων Microsoft Jet.

Για πληροφορίες σχετικά με τον τρόπο απόκτησης του Microsoft Jet 3.51, ανατρέξτε στο ακόλουθο άρθρο της Γνωσιακής Βάσης της Microsoft:

172733ACC97: Ενημερωμένων εκδόσεων του Microsoft Jet 3.5 διαθέσιμη για λήψη

Παράδειγμα χρήση DBEngine


  Sub mytest()
     Dim mydb As Database
     Set mydb = DBEngine(0)(0)
     mydb.QueryTimeout = 120
     MsgBox mydb.QueryTimeout
  End Sub
				

Μέθοδος 2

Ορίστε την ιδιότητα στο μητρώο.

ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Η εσφαλμένη χρήση του επεξεργαστή μητρώου μπορεί να προκαλέσει σοβαρά προβλήματα, τα οποία ίσως απαιτήσουν την επανεγκατάσταση των Windows. Η Microsoft δεν μπορεί να εγγυηθεί ότι τα σφάλματα που προκύπτουν από την εσφαλμένη χρήση του Registry Editor είναι δυνατό να επιλυθούν. Χρησιμοποιήστε τον Επεξεργαστή Μητρώου (Registry Editor) με δική σας ευθύνη.

Για πληροφορίες σχετικά με τον τρόπο επεξεργασίας του μητρώου, προβάλετε το θέμα αλλαγή κλειδιών και τιμών ηλεκτρονική Βοήθεια στον Επεξεργαστή μητρώου (Regedit.exe). Σημειώστε ότι θα πρέπει πρώτα να δημιουργήσετε ένα αντίγραφο ασφαλείας των αρχείων μητρώου (System.dat και User.dat), πριν να επεξεργαστείτε το μητρώο.

Χρήση της Microsoft Access 97


  1. Μεταβείτε στο ακόλουθο κλειδί μητρώου:
         HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\3.5\Engines\ODBC
    						
  2. Επιλέξτε QueryTimeout, επιλέξτε Επεξεργασία και στη συνέχεια να τροποποιήσετε. Αλλάξτε την τιμή DWORD την στην επιθυμητή ρύθμιση. Η τιμή αντιπροσωπεύει τον αριθμό δευτερολέπτων για το χρονικό όριο.

Χρήση της Microsoft Access έκδοση 7.0


  1. Δημιουργήστε το ακόλουθο κλειδί μητρώου:
        HKEY_LOCAL_MACHINE\Software\Microsoft\Access\7.0\Jet\3.0\Engines\ODBC
    						
  2. Κάντε κλικ στο κουμπί τροποποίηση και, στη συνέχεια, επιλέξτε την τιμή DWORD. Προσθήκη QueryTimeout και την τιμή του χρονικού ορίου ακέραια τιμή. Αυτή η τιμή αντιπροσωπεύει τον αριθμό δευτερολέπτων για το χρονικό όριο.
Σημείωση: Εάν αυτή η αλλαγή στο μητρώο έγινε κατά την εκτέλεση του Microsoft Access, θα πρέπει να πρώτα κλείστε και κατόπιν ανοίξτε ξανά η Microsoft Access πριν από την αλλαγή αναγνωρίζεται.

Αναφορές

Για περισσότερες πληροφορίες σχετικά με τα αντίγραφα ασφαλείας του μητρώου του συστήματος, ανατρέξτε στο ακόλουθο άρθρο της Γνωσιακής Βάσης της Microsoft:

135120Το εργαλείο δημιουργίας αντιγράφων ασφαλείας των παραμέτρων για τη δημιουργία αντιγράφων ασφαλείας του μητρώου προς τα επάνω

Ιδιότητες

Αναγν. άρθρου: 153756 - Τελευταία αναθεώρηση: Σάββατο, 18 Δεκεμβρίου 2010 - Αναθεώρηση: 2.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Access 97 Standard Edition
Λέξεις-κλειδιά: 
kbhowto kbusage kbmt KB153756 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:153756
Αποποίηση ευθυνών για περιεχόμενο της Γνωσιακής Βάσης (KB) που έχει αποσυρθεί
This article was written about products for which Microsoft no longer offers support. Therefore, this article is offered "as is" and will no longer be updated.

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com