Δεν συνηθίζω να κριτικές προς άτομα που δεν γνωρίζω και ιδιαίτερα να κάνω σε άλλους πράγματα που με ενοχλούν όταν μου τα κάνουνε.
Αναφερόμενος σε "εφαρμογές της πλάκας" φυσικά και δεν εννοώ αυτές που φτιάχνεις εσύ προσωπικά μιας που δεν τις έχω δει και βέβαια ούτε που σε γνωρίζω!
Εννοώ οτι εφαρμογές τις πλάκας (γενικά) υπάρχουν πολλές ακόμα κι αν επαγγέλονται οτι ακολουθούν τα οποιαδήποτε state of the art πρότυπα ανάπτυξης εφαρμογών κλπ. κλπ.
Όσο αφορά στη βιβλιογραφία σε διαβεβαιώ οτι έχω διαβάσει πάρα πολύ στη ζωή μου... ειδικά αυτά τα θέματα.
Αυτό το οποίο γράφω και υποστηρίζω δεν είναι μία "και καλά" γνώμη που λέγετε για να τραβήξει την προσοχή με το άλλοθι οτι "διαφέρει" και "ξεχωρίσει" από την πεπατημένη... δηλαδή "όλη την Βιομηχανία" όπως την αναφέρεις.
Όπως είπα οι λόγοι είναι πάρα πολλοί:
- Performance
- Security
- Maintenance
Μπορώ αν επιμένεις να στο αναλύσω αν θες, απλά δεν αφορά θέμα του τρέχοντος post.
Μιας όμως και διαφώνησες θα ήθελα να το αναλύσεις και να το αιτιολογήσεις... απλά το "είσαι τελείως λάθος" διότι η τάση ή η βιβλιογραφία ή τα διάφορα sites λένε αυτό κι εκείνο κλπ κλπ δεν με πείθουν,... και ξέρεις γιατί?
Για να έρθω σε αυτό που έλεγα πριν, ο κόσμος είναι γεμάτος crepping projects... ποιος μου εγγυάται εμένα οτι μια υπέροχη αναφορά στην υλοποίηση ενός project που έγινε με την μεθοδολογία που υποστηρίζεις είναι και η βέλτιστη δυνατή?
Ποιός μου λέει εμένα οτι αυτός που την ανέπτυξε είχε ακριβώς την δική σου νοοτροπία και ακολούθησε την δεδομένη μεθοδολογία με κλειστά μάτια...
Όταν ο πελάτης μου εμένα μου πει "ο χρόνος είναι για μένα unaccpetable" και κινδυνεύσω να χάσω ένα έστω και μικρό budjet των 20000 euro, γιατί να το χάσω αν βλέπω οτι με την ίδια υλοποίηση με SP το perfomance βελτιώνετε... εκθετικα?
Να πάω δηλαδή σε όλους τους κ.κ. συγγραφείς των βιβλίων που επαγγέλονται την μη χρήση των stored procedures και τους ζητήσω να λεφτα που δεν κέρδισα από τα χαμένα projects,... ?? (ok... υπερβολή... αλλά νομίζω το "έπιασες" αυτό που θέλω να πω).
Επανέρχομαι, λοιπόν, στο αρχικό μου ερώτημα.
Ποιός θα μου πεί τι είναι ποιο γρήγορο (μιας που μιλάμε για perfomance) ?
Σε διαβεβαιώ,.... κανείς άλλος πέρα από την εφαρμογή και την υλοποίηση όλων των παραπάνω στην πράξη, με βάση τις ανάγκες του συγκεκριμένου πελάτη, σε πραγματικό χώρο και χρόνο,.... και πολλές φορές και με το χρονόμετρο στο "χέρι",... ειδικά όταν με βάση τον χρόνο "παίζονται" πάρα πολλά φράγκα!!
Αλλά σκέψου και πιο λογικά,... και σε ρωτώ να μου απαντήσεις (αν θες βέβαια).
Σκέψου το παραπάνω constraint να κλειθεί από έναν client.
θα πρέπει:
1. Να ανοίξεις transaction (start trans)
2. Να κάνεις το update 1
3. Να κάνεις το update 2
4. Να κλείσεις το transaction (commit)
Σκέψου οτι σε ένα δίκτυο με κινήσεις εκατοντάδων "πακέτων" το λεπτό τα παραπάνω 4 βήματα θα εκτελεστούν σειριακά και με διαφορετικές κλήσεις στον server.
Πιστεύεις οτι το παραπάνω είναι πιο γρήγορο από να constrain στον πίνακα ή ένα trigger που θα εκτελεστεί όλο στον server επειδή έτσι λέει η βιβλιογραφία?
[edited: sorry... Γιώργο ... αλλά είδα την απάντηση σου αφού πάτησα save στο post μου... και δεν θα ήθελα να το σβήσω...

]
Nothing to declare...