Προς το περιεχόμενο

Σύνδεση Βάσης Δεδομένων με πρόγραμμα Visual Basic


TsikalidisAlex

Προτεινόμενες αναρτήσεις

Δημοσ.
Περιττό να σου πω ότι μόνο μία σύνδεση επιτρέπεται ανά πάσα στιγμή σε mdb αρχεία.

 

Είσαι σίγουρος για αυτό; Έχω κάνει κάποια test για να δω τις αντοχές της mdb και κατάφερα κ είχα ταυτόχρονα μέχρι και 70 connection ανοιχτά. Ο κώδικας ήταν σε φάση

>While(True)
   Dim myConn As New OledbConnection("...")
   myConn.Open()
End While

και η λούπα έτρεξε αρκετές φορές πριν σκάσει exception.

 

Θα σου πρότεινα MS SQL ή MySQL. Για τον MS SQL η express έκδοση είναι δωρεάν, όπως επίσης δωρεάν είναι και η MySQL.

 

O Sql Server Express Edition είναι δωρεάν, αλλά δύσκολα βρίσκεις hosting που να έχει την express έκδοση, άρα πάλι πρέπει να πληρώσεις ένα db instance.

Δημοσ.

Δοκίμασε να γράψεις κάτι σε κάθε επανάληψη, και μην δώσεις close στο connection.

Γίνονται σωστά οι εγγραφές;

 

Επίσης δοκίμασε να ανοίξεις το mdb ταυτόχρονα από διαφορετικούς υπολογιστές. Δεν σου εμφανίζει κάποιο μήνυμα;

Δημοσ.

close στο connection δεν έκανα επίτηδες. Κ αυτό για να δω τι αντοχές έχει η access σε πολλά connections. Με πολλούς υπολογιστές δεν δοκίμασα το σενάριο. Το CMS της εταιρίας μου, έπαιζε παλιά με access κ κάποια στιγμή είχαμε πρόβλημα με database connections. Οπότε ναι, η access έφταιγε (και την διώξαμε).

 

Αλλά δε νομίζω ότι δεν ανοίγει πάνω από 1 connection. Από όσο ξέρω, υποστηρίζει πολλά connections, αλλά όχι πολλά. Δηλαδή για web εφαρμογή δεν προτείνεται.

Δημοσ.

Όντως μπορείς να έχεις πολλές συνδέσεις αλλά όχι απ'ευθείας σε ένα αρχέιο mdb αλλά μόνο όταν το ανοίγεις μέσω ODBC provider. Υποθέτω ότι με τον τρόπο που προσπαθείς να το ανοίξεις (από URL) δεν θα μπορείς να έχεις πολλά connections, τουλάχιστον από διαφορετικούς υπολογιστές.

 

Δοκίμασε να δώσεις στο αρχείο mdp δικαιώματα στον χρήστη του IIS. Για αρχή δώση πλήρη δικαιώματα στον "everyone" για να σιγουρευτείς ότι φταίει αυτό. Αν ναι, τότε αφαίρεσε τον "everyone" και δώσε πιο περιορισμένα δικαιώματα μόνο στα account που χρειάζεται.

Δημοσ.

Μιλάω με την access με το JET Engine κ όχι με ODBC. Όταν λες

Υποθέτω ότι με τον τρόπο που προσπαθείς να το ανοίξεις (από URL)
τι εννοείς; Αν δεν χρησιμοποιήσεις κάποιο μέσο JET Engine, ODBC, DSN πως θα διαβάσεις την Access;

 

Όσο για τα δικαιώματα, αν δεν υπάρχουν τα απαραίτητα δικαιώματα δεν έχεις καθόλου πρόσβαση στη ΒΔ. Αλλά δε νομίζω ότι τα δικαιώματα έχουν σχέση με το πλήθος των connections αλλά με το αν έχω πρόσβαση στο physical αρχείο.

Αρχειοθετημένο

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

  • Δημιουργία νέου...