sql >> Databasteknik >  >> RDS >> Mysql

MySQL tabellnamn med små bokstäver i Windows Namn med versaler på Unix

Taget från dev.mysql.com :

För att undvika dataöverföringsproblem som uppstår från bokstäver i databas- eller tabellnamn, har du två alternativ:

  • Använd small_case_table_names=1 på alla system. Den största nackdelen med detta är att när du använder SHOW TABLES eller SHOW DATABASES, ser du inte namnen i deras ursprungliga bokstäver.
  • Använd lower_case_table_names=0 på Unix och lower_case_table_names=2 på Windows. Detta bevarar bokstäverna för databas- och tabellnamn. Nackdelen med detta är att du måste se till att dina påståenden alltid refererar till dina databas- och tabellnamn med rätt bokstäver på Windows. Om du överför dina påståenden till Unix, där bokstäver har betydelse, fungerar de inte om bokstäverna är felaktiga.

Undantag:Om du använder InnoDB-tabeller och du försöker undvika dessa dataöverföringsproblem, bör du ställa in small_case_table_names till 1 på alla plattformar för att tvinga namn att konverteras till gemener.

Om du planerar att ställa in systemvariabeln lower_case_table_names till 1 på Unix, måste du först konvertera dina gamla databas- och tabellnamn till gemener innan du stoppar mysqld och startar om den med den nya variabelinställningen.



  1. mysql gå med ON och AND för att laravel vältalig

  2. Perl DBI - kör SQL-skript med flera satser

  3. Vad är den här operatorn <=> i MySQL?

  4. Hur släpper man alla tabeller från databasen med manage.py CLI i Django?