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

Δε δουλεύουν queries INSERT, UPDATE σε XP!


k.tnb

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

Δημοσ.

Παιδιά αντιμετωπίζω το εξής παράδοξο, έχω γράψει σε Visual C# (MS Visual Studio) ένα κομμάτι κώδικα που καταχωρεί κάποια στοιχεία σε μια βάση Access 2008. Όταν κάνω publish την εφαρμογή στον IIS των Vista όλα τρέχουν σωστά. Όταν κάνω publish όμως σε IIS των XP, τη στιγμή που πρέπει να εκτελέσει το query η λειτουργία ExecuteNonQuery(), μου βγάζει μια εξαίρεση με το μήνυμα: Η λειτουργία πρέπει να χρησιμοποιεί ένα ερώτημα με δυνατότητα ενημέρωσης. Το query που στέλνω είναι INSERT ή UPDATE! Το έχει δει κανείς άλλος αυτό; Έχω φάει το Google και δε μπορώ να βρω κάτι..

 

ΥΓ: Αιτήματα SELECT δουλεύουν κανονικά και στα δυο λειτουργικά.

Δημοσ.

Σαν να έχεις ανοιξει τη database readonly μοιάζει. To αρχειο mdb έχει write/modify persmissions; Μήπως ο γονεϊκος φάκελος δεν έχει και περνάνε τα δικαιώματα και σ'αυτό;

Δημοσ.

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

Thnx anyway..

Δημοσ.

μάλλον έχει να κάνει με τις ιδιότητες στην Access.

 

Πήγαινε Επιλογές-->Σύνθετες επιλογές--->Επιβεβαίωση και εδώ αποεπέλεξε τα Ερωτήματα ενέργειας ή και τα ερωτήματα διαγραφής αν θες....

Δημοσ.

@Evgenios1: Το μήνυμα της εξαίρεσης είναι Η λειτουργία πρέπει να χρησιμοποιεί ένα ερώτημα με δυνατότητα ενημέρωσης.

 

@CableCity: Βασικά δουλεύω σε Access 2008 και δεν βρήκα το μενού Επιλογές. Τα έχουν αλλάξει λίγο και με το Alt δεν εμφανίζεται η παλιά μπάρα επάνω.. Αυτό που πρότεινες θα έχει καμιά αλλαγή στον τρόπο αντιμετώπισης των ερωτημάτων προς τη βάση;

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

 

κατ' αρχην μια συμβουλή: καλύτερα να ρυθμίσεις κάποιο απο τα συστηματα που χρησιμοποιείς (το λειτουργικό, ή την access, ή τον IIS.. δεν ξερω), σε English/US settings, γιατι debugging με ελληνικά μηνύματα ειναι άσκηση αυτομαστιγώματος.. :-)

 

δεν βρισκεις τιποτα στο google (εκτος απο το δικό σου post).

 

------------------------------------------------

Office και Access 2008, δεν υπάρχει. 2007 ειναι η τελευταία για Win

( αν βγήκε κάτι για Macs και δεν το ξέρω; )

 

 

------------------------------------------------

 

στα vista και τα xp έχεις ίδια version .net framework (και SP), JET ?

 

αν το μηνυμα στα αγγλικά ειναι το "Operation must use an updatable query. (Error 3073)"

δες τα παρακάτω:

 

http://support.microsoft.com/default.aspx?scid=kb;en-us;116142&Produc

http://support.microsoft.com/kb/175168

http://www.aspfaqs.com/aspfaqs/ShowFAQ.asp?FAQID=107

http://www.dougscode.com/forum4/topic.asp?TOPIC_ID=5

Δημοσ.

Φυσικά εννοούσα την έκδοση 2007 από Office!! Απλά ήταν λάθος βιασύνης και δεν το είχα προσέξει καν...

random, όσο αφορά το πρόβλημα, λύθηκε τελικά! Έλεγξα τους συνδέσμους που πρότεινες και όλοι μιλούσαν για πρόβλημα στα δικαιώματα κάτι το οποίο ανέφεραν και πιο πριν τα παιδιά και που νόμισα ότι τα είχα σωστά. Είχα ορίσει δικαιώματα εγγραφής για το αρχείο της βάσης και τον κατάλογο που βρίσκεται αλλά αυτά σύμφωνα με κάποιες ρυθμίσεις κληρονομούσαν τα δικαιώματα του κορυφαίου φακέλου του IIS, του wwwroot δηλαδή. Η λύση ήταν να καταργήσω αυτήν την κληρονομικότητα ή να θέσω δικαίωμα εγγραφής στον wwwroot. Έκανα το δεύτερο και δουλεύουν όλα μια χαρά..

 

Σας ευχαριστώ όλους για τις προτάσεις!

Δημοσ.

Οταν σου λεω να βαλεις το exception εσυ μου το μεταφραζεις. Μια συμβολη: Οταν δουλευεις με κλασσεις οι οποιες εχουν throws καλο ειναι να κανεις catch το error code και μετα να το κγουκγλαρεις.

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

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

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