2017-08-18 4 views
0

J'ai un problème. J'utilise Windows au travail pour développer mais le serveur est Linux. Je travaille souvent avec des requêtes de base de données.Windows MySQL sensible à la casse

Maintenant, je tape souvent le nom de la table dans des plafonds erronés (comme, en minuscule si les 3 premiers caractères sont en majuscules). Comment puis-je activer la sensibilité à la casse sous Windows?

J'ai actuellement essayé de mettre

lower_case_table_names=1 

Après

interactive-timeout 

Et j'ai aussi essayé de mettre

lower_case_table_names=0 

Après

interactive-timeout 

Aucun d'entre eux ne fonctionne bien et mon script fonctionne toujours correctement sur Windows où il serait bug dans Linux.

Répondre

0

Son dû au système de fichiers de Linux. Chaque table créée dans la base de données crée un fichier correspondant sur le système Linux. système de fichiers linux est sensible à la casse nous savons. Donc, dans le nom de la table de requête SQL doit être sensible à la casse pour Linux.

déjà répondu ici:

Are table names in MySQL case sensitive?

MySQL, bases de données correspondent à des répertoires dans le répertoire de données. Chaque table dans une base de données correspond à au moins un fichier dans le répertoire de la base de données. Par conséquent, la sensibilité à la casse du système d'exploitation sous-jacent joue un rôle dans la sensibilité à la casse des noms de base de données et de table.

+0

Mais je ne peux pas atteindre la sensibilité à la casse sur Windows alors? –

+0

Ce n'est pas possible dans la mesure où je comprends la [référence MySQL] (https://dev.mysql.com/doc/refman/5.7/en/identifier-case-sensitivity.html) – MatSnow

+0

Je ne sais pas si vous comprenez bien, quelques lignes de la référence mySql "la sensibilité à la casse du système d'exploitation sous-jacent joue un rôle dans la sensibilité à la casse des noms de bases de données, de tables et de déclencheurs. d'Unix. " –