Δεν νομίζω ότι υπάρχει λόγος να αλλάξεις τελείως το μοντέλο αποθήκευσης
των δεδομένων σου για να μπορέσεις να κάνεις το προϊόν εμπορεύσιμο.
Εκτός από τον SQL Server 2000 υπάρχουν αρκετά DBMS τα οποία είναι free.
Ένα πρώτο παράδειγμα είναι το MSDE, το οποίο είναι πιθανό να καλύπτει
τις ανάγκες σου. Επίσης θα σου πρότεινα να ρίξεις μια ματιά και στον
SQL Server 2005 Express Edition (δεν είναι υποχρεωτικό να τον "δέσεις"
με κάποια αντίστοιχη Express Edition του VS2005). Δες και αυτό το
post που αναφέρει για την Oracle Database XE. Και φυσικά υπάρχει πάντα η λύση της MySQL (δες
εδώ) ή ακόμα και της Access.
Αν πάντως επιμένεις στη λύση των XML πρέπει να έχεις υπόψην σου τα εξής :
- Η ταχύτητα πρόσβασης και ανάκτησης δεδομένων από XML θα μειώνεται
σημαντικά όσο θα αυξάνεται ο όγκος των αρχείων. Αν η εφαρμογή σου
πρόκειται να διαχειριστεί "σχετικά" μεγάλο όγκο δεδομένων θα πρέπει να
επενδύσεις αρκετό χρόνο για να ανακαλύψεις τρόπους να βελτιώσεις την
επίδοση.
- Αν έχεις χρησιμοποιήσει περιορισμούς στη Βάση Δεδομένων (π.χ.
Foreign Keys, Primary Keys και δεν συμμαζεύεται) τότε θα πρέπει να τους
υλοποιήσεις στη διαχείριση των XML. Εναλλακτικά θα μπορούσες να
χρησιμοποιείς Dataset έχοντας βέβαια υπόψην σου ότι σίγουρα δεν θα
έχεις τον πλούτο των δυνατοτήτων που σου παρέχει ένα DBMS και ότι θα
μειώσεις ακόμα περισσότερο την ταχύτητα επεξεργασίας των δεδομένων.
- Αν δεν χρησιμοποιήσεις Dataset τότε θα πρέπει να υλοποιείς τα
διάφορα queries προς τα δεδομένα με XPATH και πάλι XPATH, το οποίο
μπορεί να φτάσει σε αρκετά πολύπλοκα επίπεδα ιδίως αν χρησιμοποιήσεις
(που το συστήνω) πολλά αρχεία XML. Ακόμα κι αν χρησιμοποιήσεις Dataset
δεν μπορείς να κάνεις εύκολα οποιοδήποτε join σου έρθει στο μυαλό, αλλά
μόνο απλά πράγματα.
Εν κατακλείδι, δεν σου λέω πως δεν γίνεται. Αντιθέτως υπάρχουν αρκετά
DBMS που στηρίζονται σε XML. Το να φτιάξεις όμως κάτι τέτοιο ίσως σου
πάρει αρκετό χρόνο, ενώ το να μεταβείς από SQL Server 2000 σε κάποιο
free DBMS θα είναι πολύ πιο γρήγορο. Ότι πάντως κι αν επιλέξεις το
forum θα είναι εδώ για περαιτέρω βοήθεια...
Στερνή μου γνώση να σε είχα πρώτα...