Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

Îåêßíçóå áðü ôï ìÝëïò jimenez. Τελευταία δημοσίευση από το μέλος jimenez στις 06-07-2006, 15:01. Υπάρχουν 17 απαντήσεις.
Σελίδα 1 από 2 (18 εγγραφές)   1 2 >
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  04-07-2006, 14:21 14407

    Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Καλησπέρα, έχω το εξής πρόβλημα. Αν πάω να τρέξω κάποια Inserts μου χτυπάει exception (Αυτό θα γίνεται.). Το θέμα είναι ότι μετά δεν μπορώ να ανοίξω τη βάση από τον Sql Express. Βγάζει μήνυμα "Database is damaged". Τι γίνεται εδώ?Αυτό το πρόβλημα θα έχω?? 
    Dimitris S.
    FIRST TEST THEN CODE....
  •  04-07-2006, 15:23 14409 σε απάντηση της 14407

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Θεωρητικά το ένα δεν θα πρέπει να έχει καμία σχέση με το άλλο. Δηλαδή αυτό που θέλω να πω είναι πως με ένα ή αρκετά exceptions στο πρόγραμμά μου δεν θα πρέπει να καταστρέφεται η βάση μου.

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

    Προσωπικά δεν μου έχει τύχει ποτέ το συγκεκριμένο μήνυμα λάθους οπότε μιλάω θεωρητικά.
  •  04-07-2006, 15:39 14410 σε απάντηση της 14409

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Ξερεις το θέμα είναι ότι πάω να την ανοίξω την βάση από τον sql express και βγάζει το μήνυμα.Και όποτε από την εφαρμογή κάνω Open το Connection string και όλα τα παρεμφερί που έχουν σχέση με sql.Δε ξερω αν τυχαίνει, αλλά πάντα μετά από 5-6 sql exceptions γίνεται αυτό.
    Dimitris S.
    FIRST TEST THEN CODE....
  •  04-07-2006, 17:07 14411 σε απάντηση της 14410

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Μήπως το μηχάνημα που φιλοξενεί τη βάση δεν είναι και τόσο στα «καλά» του.
    while (!dead) learn();
  •  04-07-2006, 17:19 14412 σε απάντηση της 14411

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Λες?είναι celeron.Μπορει να ισχύει αυτό που λες.θα το τσεκάρω.
    Dimitris S.
    FIRST TEST THEN CODE....
  •  04-07-2006, 18:01 14413 σε απάντηση της 14412

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    αν είχαν τέτοια αξιοπιστία οι βάσεις δεδομένων θα γράφαμε ακόμα σε αρχεία, για να μην πω σε διάτρητες καρτέλες! :)
    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  04-07-2006, 18:17 14414 σε απάντηση της 14413

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Δεν ξερω ρε Guys αλλά πρώτη φορά το συνανταω αυτο.Εδώ και 6 χρόνια με βάσεις παίζω (Oracle,SQL Server) και ποτέ δεν το έχω δει.
    Dimitris S.
    FIRST TEST THEN CODE....
  •  04-07-2006, 20:45 14417 σε απάντηση της 14414

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Τι ακριβώς exceptions χτυπάνε κατά το insert? Μήπως η βάση είναι damaged/suspect εκ των προτέρων και γι αυτό χτυπάνε τα insert; Τρέξε κανένα DBCC να την τσεκάρεις...
    Vir prudens non contra ventum mingit
  •  05-07-2006, 09:54 14422 σε απάντηση της 14407

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Κοίτα είναι server εφαρμογή. Οι clients στέλνουν στον server ορισμένα data να τα κάνει Insert. Εαν δεν λάβω σωστά data τότε στέλνω Noack. Εφόσον στείλω στο client Noack προσπαθεί 5 φορές να μου την ξαναστείλει.Έτσι χτυπάνε 5 exceptions. Στην συνέχεια στέλνοντας ο client σωστά data, βγαίνει το μήνυμα για damaged βάση.
    Dimitris S.
    FIRST TEST THEN CODE....
  •  05-07-2006, 10:05 14423 σε απάντηση της 14422

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

     jimenez wrote:
    Εαν δεν λάβω σωστά data τότε στέλνω Noack.

    Τον έλεγχο για το αν είναι σωστά τα data τον κάνεις εσύ ή το καταλαβαίνεις από το exception;

     jimenez wrote:
    Έτσι χτυπάνε 5 exceptions.

    Τι exceptions είναι αυτά; Αν είναι ADO.NET exceptions, έχεις τσεκάρει μήπως είναι chain από exceptions για να τα βρεις όλα;


    Vir prudens non contra ventum mingit
  •  05-07-2006, 10:18 14425 σε απάντηση της 14407

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Τα ελέγχω τώρα, αλλά χθεσ πριν προσθέσω τους ελέγχους το έκανε. Π.χ μου έστελνε μηδενική datetime ddmmyyhhmmss ('000000000000') και κατά το insert χτύπαγε. Οπότε ήταν exception ADO. Έτσι μετά από 5 συνεχή exceptions γινόταν αυτο. Και δεν πιστευω να ήταν πριν damaged η βάση γιατί έκανε σωστό insert πριν αλλά μετά τα exception έβγαζε το μήνυμα.
    Dimitris S.
    FIRST TEST THEN CODE....
  •  05-07-2006, 15:08 14441 σε απάντηση της 14422

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

     jimenez wrote:
    Εαν δεν λάβω σωστά data τότε στέλνω Noack.

    Noack? Τί εννοείς στέλνεις Noack? Απ' όσο ξέρω, το ADO.NET δεν έχει τέτοια πράγματα. Το Noack συνήθως είναι όρος των πρωτοκόλλων δικτύου και σημαίνει ότι ο παραλήπτης (εσύ) έχασε τα δεδομένα, και πρέπει να ξαναμεταδωθούν. Μήπως προσπαθείς να φτιάξεις το δικό σου πρωτόκολλο για να μιλήσεις με τον SQL Express? Αλήθεια, πως προσπαθείς να επικοινωνήσεις? Πως στέλνεις το Noack?

    Ίσως, ο driver ή το service στο οποίο στέλνεις τα επανηλλημένα NOACKs θεωρεί ότι μετά από 5 συνεχόμενα NOACK υπάρχει σοβαρό πρόβλημα επικοινωνίας με τη βάση και σου γυρίζει αυτό το μήνυμα.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  05-07-2006, 15:25 14444 σε απάντηση της 14441

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    όχι.Απλά σας μπερδεψα λίγο. Είναι εντολή του "δικού μου" πρωτοκόλλου. Τι να σας πω 4 φορες έγινε σε ίδιες καταστάσεις.Δηλαδή μετά από 5 exceptions.Μήπως είναι θέμα μηχανήματος?Ούτως η αλλως το application Θα τρέχει σε server μηχάνημα.
    Dimitris S.
    FIRST TEST THEN CODE....
  •  05-07-2006, 23:22 14454 σε απάντηση της 14444

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Μήπως λοιπόν φταίει ότι στέλνεις NACK? Γιατί να στείλεις NACK αφού τα δεδομένα τα πήρες? Το NACK ζητάει από το server να του ξαναστείλει τα δεδομένα. Αυτό που κάνεις ουσιαστικά είναι να λές συνέχεια στο server ότι απέτυχε η σύνδεση. Ε, κάποια στιγμή και ο server τα παρατάει.

    Από εκεί και πέρα, θα πρέπει πραγματικά να μας πεις τί exceptions παίρνεις. Από τη στιγμή που παρακάμπτεις το ADO ή το ADO.NET τα exceptions δεν μπορεί να είναι του ADO ή του ADO.NET.

    Και το τελευταίο, γιατί προσπαθείς να παρακάμψεις το ADO.NET? Το να υλοποιήσεις το δικό σου τρόπο επικοινωνίας με το server είναι αρκετά δύσκολο όπως θα κατάλαβες και απαιτεί να καταλάβεις πως ακριβώς δουλεύει το πρωτόκολλο επικοινωνίας του server. Μία παρανόηση και χάνεις το τί συμβαίνει. Από την άλλη τα πιθανά κέρδη σε ταχύτητα θα είναι ελάχιστα, αν υπάρχουν.
    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  06-07-2006, 09:45 14460 σε απάντηση της 14454

    Απ: Μετά από αρκετά exceptions στο πρόγραμμα καταστρέφεται η βάση??????????????

    Βασικά ο server στέλνει Noack στον client γιατί του λέει ότι "δεν μου αρεσαν τα στοιχεία που έστειλες".Έτσι ο κάθε client ξανακάνει κάτι έλεγχους και στέλνει τα σωστά.Ο λόγος που στέλνω Noack έιναι γιατί πρέπει αυτά τα data να τα λάβει ο server οπωςδήποτε.

    Κοίτα, μου στέλνει πχ Command "ddmmyyhhmmssOK"

    Αυτό έιναι ένα command.Στην αρχή που δεν ελεγχα το datetime μου έστελνε

    000000000000ΟΚ, και μετά εγώ κάνω convert (manually,δικιά μου συνάρτηση) και αυτό μετά το έβαζα στο sql query.Οπότε και φυσικά θα μου πέταγε exception λογω datetime.Αυτά τα exception βγάζει. Τώρα κάνω φυσικα πολλούς ελέγχους.

    Έτσι για να ολοκληρώσω μετά από τα exceptions η βαση καταστραφόταν, γιατί μετά σε ένα σωστό Insert έβγαζε μηνυμα για κατεστραμένη βάση. Έλπιζω να εφταιξε το ότι έτυχε να κάνω τις πρώτες δοκιμές σε Celeron 1,5Ghz με 512ΜΒ.Και γενικά δεν είναι και στα καλά του.Τέλος πάντων,Ευχαριστώ και την βοηθειά σας. Τι να σας πω αυτο δεν μου έχει ξανα συμβεί.Καλή σας μέρα.
    Dimitris S.
    FIRST TEST THEN CODE....
Σελίδα 1 από 2 (18 εγγραφές)   1 2 >
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems