MySQL Error 1170 (42000): BLOB/TEXT στήλη μεταχειρισμένος μέσα κλειδί χαρακτηριστικό χωρίs έναs κλειδί μήκος
πότε δημιουργώ έναs καινούργιος τραπέζι ή μεταβάλλω έναs υπαρκτός τραπέζι με βασικός κλειδιά, μοναδικός constraints και indexes, ή πότε καθορισμένος έναs καινούργιος index με μεταβάλλω τραπέζι μεταχειρίζομαι δήλωση μέσα MySQL βάση δεδομένων, the επόμενος error μπορώ περνάει από το μυαλό και απαγορεύω the the κόμμα από ολοκληρώνω:
ERROR 1170 (42000): BLOB/TEXT στήλη ‘field_name’ μεταχειρισμένος μέσα κλειδί χαρακτηριστικό χωρίs έναs κλειδί μήκος
The error συμβαίνει διότι MySQL μπορώ index μόνο the πρώτος N chars του έναs BLOB ή TEXT στήλη. So The error ενδοχώρα συμβαίνει πότε υπάρχει έναs χωράφι/ στήλη δακτυλογραφώ του TEXT ή BLOB ή εκείνοι υπάρχοντα σε TEXT ή BLOB δακτυλογραφώ όπως TINYBLOB, MEDIUMBLOB, LONGBLOB, TINYTEXT, MEDIUMTEXT, και LONGTEXT ότι you προσπαθώ σε φτιάχνω όπως βασικός κλειδί ή index. με γεμάτος BLOB ή TEXT χωρίs the μήκος αξία, MySQL is ανίκανος σε εγγύηση the uniqueness του στήλη όπως αυτού’ του μεταβλητή και δυναμικός μέγεθος. So, πότε χρησιμοποιώνταs BLOB ή TEXT δακτυλογραφώ όπως index, the αξία του N μουστάκι να είμαι προμήθευσα so ότι MySQL μπορώ καθορίζω the κλειδί μήκος. οπωσδήποτε, MySQL doesnt’ υποστηρίζω όριο επάνω TEXT ή BLOB. TEXT88() απλά wont’ δουλειά.
The error θα επίσηs pop πάνω πότε you προσπαθώ μετατρέπω έναs τραπέζι στήλη από μη-TEXT και μη-BLOB δακτυλογραφώ όπως VARCHAR και ENUM into TEXT ή BLOB δακτυλογραφώ, μαζί με στήλη ήδη been καθόρισα όπως μοναδικός constraints ή index. The μεταβάλλω τραπέζι SQL κόμμα θα αποτύχω.
The λύση στο πρόβλημα is απομακρύνω the TEXT ή BLOB στήλη από το index ή μοναδικός constraint, ή θέτω another χωράφι όπως βασικός κλειδί. εάν you cant’ κάνω ότι, και αναγκαίος σε γλώσσα έναs όριο επάνω σε TEXT ή BLOB στήλη, προσπαθώ σε χρήση VARCHAR δακτυλογραφώ και γλώσσα έναs όριο του μήκος επάνω αυτό. από παράληψη, VARCHAR is περιορισμένος σε έναs μέγιστος του 255 χαρακτήρας και αυτού όριο μουστάκι να είμαι καθόρισα implicitly με έναs βραχιόλι σωστός μετά αυτού δήλωση, i.e VARCHAR200() θα όριο αυτό σε 200 χαρακτήρας μακρύς μόνο.
μερικέs φορέs, αν και you dont’ χρήση TEXT ή BLOB related δακτυλογραφώ μέσα δικό σου τραπέζι, the Error 1170 μπορώ επίσηs εμφανίζομαι. αυτό συμβαίνει μέσα κατάσταση όπως πότε you καθορίζω VARCHAR στήλη όπως βασικός κλειδί, μα λάθοs θέτω αυτού μήκος ή χαρακτήρας μέγεθος. VARCHAR μπορώ μόνο δέχομαι κοντά 256 χαρακτήρας, so οτιδήποτε όπως VARCHAR512() θα δύναμη MySQL σε αυτο- μετατρέπω the VARCHAR512() σε έναs SMALLTEXT datatype, ο οποίος μεταγενέστερα αποτυγχάνω με error 1170 επάνω κλειδί μήκος εάν the στήλη is μεταχειρισμένος όπως βασικός κλειδί ή μοναδικός ή μη- μοναδικός index. λύνω this πρόβλημα, καθορίζω έναs νούμερο λιγότερο από 256 όπως the μέγεθος για VARCHAR χωράφι.
σημαντικός: αυτό είναι ένα πολυβόλο μετέφρασα σελίδα ο οποίος is προμήθευσα " όπως is" χωρίs εγγύηση. πολυβόλο μετάφραση μπορώ να είμαι δύσκολος σε understand. παρακαλώ αναφέρομαιπρωτότυπος Άγγλος άρθρο οποτεδήποτε είναι δυνατόν.
μοιράζομαι και contribute ή αποκτώ τεχνικός υποστηρίζω και βοήθεια σεMy ψηφιακόs ζωή φόρουμ.
Related άρθρο
- πωs μετατρέπω χαρακτήρας θέτω και Collation του WordPress βάση δεδομένων
- εγκαθιστώ Web υπηρετώ μέσα ελεύθερος 6.0 με Apache 2.2, MySQL 5.0 και PHP 5 τμήμα 3
- δημιουργώ καινούργιος τραπέζι από επιλογή δεδομένα από άλλος τραπέζι με δημιουργώ τραπέζι όπως
- εγκαθιστώ Web υπηρετώ μέσα Windows XP με Apache2, PHP5 και MySQL4 τμήμα 4
- αλλάζω και ξαναρυθμίζω MySQL ρίζα κωδικός
- ORA-02449 Oracle σταγόνα τραπέζι Error
- επιτρέπω MySQL InnoDB αποθήκευση μηχανή υποστηρίζω μέσα XAMPP εγκατάσταση
- WordPress MySQL SQL ερώτηση Error μέσα WPDB τάξη
- εύκολα διπλός, αντίγραφο ή πλάτη τραπέζι μέσα Oracle, PostgreSQL, DB2 και SQLite με δημιουργώ τραπέζι όπως SQL
- Oracle PL/SQL ORA-00947 όχι αρκετός αξία Error

































Αύγουστος 30th, 2007 1833:
ευχαριστώ για στόκος this πάνω. εγώ didnt’ αποκτώ the error και you σώζω εμένα πολύ o frustration. αστυνομική ταυτότητα’ βάζω you μέσα στο ‘Goog άνθρωποι’ κατηγορία οποτεδήποτε
Φεβρουάριοs 20th, 2008 0245:
ευχαριστώ πολύ χρήσιμος ταχυδρομώ.
Φεβρουάριοs 23rd, 2008 0340:
ευχαριστώ για the ταχυδρομώ. πολύ βοήθεια.
βαδίζω 7th, 2008 0415:
ευχαριστώ, πολύ καλό καθόρισα