Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| portail:internet:sql:start [2021/04/09 11:26] – admin | portail:internet:sql:start [2022/08/13 21:58] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 7: | Ligne 7: | ||
| ===== Logiciels ===== | ===== Logiciels ===== | ||
| - | ~~ol: | + | <WRAP list-deep> |
| - **[[logiciel: | - **[[logiciel: | ||
| - | * [[logiciel: | + | |
| - | * [[logiciel: | + | |
| - | | + | |
| - | * **Oracle** : voir la page [[logiciel: | + | - **voir la page [[logiciel: |
| - | * [[logiciel:sql: | + | |
| - | * [[logiciel: | + | - **Oracle** : voir la page [[logiciel: |
| - | * [[logiciel: | + | |
| + | - **[[logiciel: | ||
| + | - **[[logiciel: | ||
| + | </ | ||
| ===== Tutoriels ===== | ===== Tutoriels ===== | ||
| - | * **[[tutoriel: | + | <WRAP list-deep> |
| + | - **[[tutoriel: | ||
| + | - **[[tutoriel: | ||
| + | </ | ||
| + | |||
| + | ==== Problèmes et solutions ==== | ||
| + | |||
| + | ??? Erreur SQL DB_ERROR_1071 Specified key was too long; max key length is 767 bytes | ||
| + | !!! Les préfixes peuvent faire jusqu' | ||
| + | |||
| + | Or, dans les instructions CREATE TABLE, la longueur du préfixe est un nombre de caractères ..." | ||
| + | Un caractère utf8 peut utiliser jusqu' | ||
| + | Vous ne pouvez donc pas indexer les colonnes ou les préfixes de colonnes de plus de 255 caractères utf8. | ||
| + | |||
| + | "Pour les colonnes CHAR, VARCHAR, BINARY et VARBINARY, des index peuvent être créés qui n' | ||
| + | ... | ||
| + | Pour un index UNIQUE, visez une longueur maximum de 191. | ||
| + | |||
| + | Mettez donc une longueur plus petite pour chaque clé pour ne pas dépasser la limite totale. | ||
| + | |||
| + | Par exemple, si la clé ConfigValue est définie sur 255, n' | ||
| + | ... | ||
| + | `ConfigValue` varchar(255) ..., | ||
| + | ... | ||
| + | UNIQUE KEY `key_ConfigValue` (`ConfigValue`(20), | ||
| + | ...</ | ||
| + | !!! Autre méthode, en ligne de commande (suppose un accès en mode terminal) | ||
| + | <WRAP list-deep> | ||
| + | - Ouvrez un client MySQL (ou MariaDB) en ligne de commande. Entrez votre login et mot de passe | ||
| + | - Sélectionnez votre base de données et lance ces commandes :<cli prompt=' | ||
| + | Database changed | ||
| + | ...@...:~ $ set global innodb_large_prefix=on; | ||
| + | Query OK, 0 rows affected (0.00 sec) | ||
| + | ...@...:~ $ set global innodb_file_format=Barracuda; | ||
| + | Query OK, 0 rows affected (0.02 sec)</ | ||
| + | - **Accédez à votre base de données avec phpMyAdmin ou Adminer** | ||
| + | - Sélectionnez la base de données | ||
| + | - Afficher la structure de la table | ||
| + | - Allez à l' | ||
| + | - Changez ROW_FORMAT en DYNAMIC et enregistrez les modifications | ||
| + | - Aller à l' | ||
| + | - Cliquez sur le bouton Unique | ||
| + | - Terminé. Maintenant, il ne devrait y avoir aucune erreur. | ||
| + | </ | ||
| ===== Voir aussi ===== | ===== Voir aussi ===== | ||