sanidas Δημοσ. 30 Μαΐου 2007 Δημοσ. 30 Μαΐου 2007 Καλησπέρα, Έχω κάνει άπειρες εφαρμογές σε c++builder 6 και mssql 2005 αλλά εδώ και μερικές μέρες αντιμετωπίζω ένα πολύ περίεργο πρόβλημα. Καταρχήν στήνω την βάσει δεδομένων τοποθετώντας κατάλληλα τα αρχεία .mdf και .ldf που μου έχουν δώσει τα οποία περιέχουν την βάση μου. Έπειτα δημιουργώ το alias στον odbc και δημιουργώ ένα project σε builder για να διαβάσω τα δεδομένα μου. Το πρόβλημα είναι ότι δεν μπορώ να διαβάσω τα πεδία των πινάκων που είναι varchar . Ενώ τα πεδία με αριθμούς μπορώ να τα διαβάσω κανονικά. Στην αρχή υπέθεσα ότι ίσως είναι το collation της βάσης και το άλλαξα σε Greek_CI_AI αλλά τπτ. Και πάλι έχω το ίδιο πρόβλημα. Ευχαριστώ εκ τον προτέρων, Sanidas
pkanabos Δημοσ. 30 Μαΐου 2007 Δημοσ. 30 Μαΐου 2007 Τί εννοείς ότι δεν μπορείς να διαβάσεις τα πεδία? Τί συμβαίνει? Όταν συνδέεσαι από το Management Studio στη βάση, τί περιέχουν οι πίνακες? Χωρίς παραπάνω πληροφορίες μόνο να μαντέψει μπορεί κανείς, αλλά αν διαβάζεις τα πεδία και βγαίνουν καλικατζάρια, ή ακόμα χειρότερα, κουτάκια ή ερωτηματικά, το πρόβλημα πρέπει να οφείλεται στο λάθος collation. Αν βλέπεις καλικατζάρια, το κείμενο υπάρχει ακόμα. Αν βλέπεις κουτάκια ή ερωτηματικά, μάλλον έχει χαθεί. Γενικά η χρήση του varchar είναι κακή ιδέα, καθώς ξαφνικά εξαρτάσαι από το αν η βάση έχει το σωστό collation, αν αυτός που έγραψε στη βάση έγραψε με το σωστό collation, πως είχε ρυθμίσει το connection και άλλα περίεργα. Ο OLEDB και ο .NET provider του SQL Server υποστηρίζουν μετάφραση από το locale του Server σε αυτό του χρήστη, αν και αυτή μπορεί να απενεργοποιηθεί από το connection string. Δεν ξέρω αν ο ODBC provider κάνει το ίδιο.
sanidas Δημοσ. 31 Μαΐου 2007 Μέλος Δημοσ. 31 Μαΐου 2007 Καταρχήν δεν δουλεύω καθόλου σε visual studio αλλά σε builder 6. Έχουμε για παράδειγμα το table dbo.City με πεδία CityID και CityName. Όταν βάζω ένα DBLookupComboBox στην φόρμα μου και ορίζω το κατάλληλο listsource, στην επιλογή listfield μου εμφανίζεται μόνο η επιλογή CityID και όχι η επιλογή CityName. Το ίδιο συμβαίνει και στο property keyfield. Έτσι δεν μπορώ να εμφανίσω το πεδίο CityName. To ίδιο πράγμα μου συμβαίνει σε κάθε πεδίο το οποίο περιέχει string. Τους πίνακες που περιέχουν μόνο αριθμούς μπορώ να τους δω κανονικά… Ευχαριστώ,
pkanabos Δημοσ. 31 Μαΐου 2007 Δημοσ. 31 Μαΐου 2007 Με παρεξήγησες. Δεν εννοούσα το Visual Studio, αλλά το Management Studio, το management πρόγραμμα του SQL Server. Αν έχεις στήσει κάποια έκδοση SQL Server εκτός από Express το Management Studio έχει επίσης στηθεί. Αν έχεις SQL Server Express, υπάρχει ειδική έκδοση την οποία πρέπει να κατεβάσεις ξεχωριστά. Άσχετα από τί εργαλείο θα χρησιμοποιήσεις, το θέμα είναι - τί περιέχουν οι πίνακες, και συγκεκριμμένα αυτά τα πεδία?
sanidas Δημοσ. 1 Ιουνίου 2007 Μέλος Δημοσ. 1 Ιουνίου 2007 Σορρυ για την παρεξήγηση. Δουλεύω με το Management studio express και οι πίνακες, πιο συγκεκριμένα τα πεδία που δεν μπορώ να διαβάσω, περιέχουν χαρακτήρες. Πίνακες με αριθμητικά πεδία τους διαβάζω κανονικά. Ευχαριστώ
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.