私はオンライン データベースに MySql ワークベンチを使用してきましたが、すべてをセットアップできましたが、驚いたことに、そして上司も驚いたことに、ワークベンチは実際には大文字と小文字を区別していました。2 つの選択ステートメントを記述しましたが、1 つは機能しましたが、大文字と小文字の区別のため、もう 1 つは機能しませんでした。もう一度試してみたところ、どうやらそうだったようです。
私は -MySql Workbench 5.2
を実行していますWindows XP
。
これには何か理由があるのでしょうか?
答え1
これはしばらくの間、mysql の基盤機能の一部でした。少なくとも 5.x のすべてのバージョンでは
MySQL では、データベースはデータ ディレクトリ内のディレクトリに対応します。データベース内の各テーブルは、データベース ディレクトリ内の少なくとも 1 つのファイルに対応します (ストレージ エンジンによっては、さらに対応している場合もあります)。したがって、基盤となるオペレーティング システムの大文字と小文字の区別は、データベース名とテーブル名の大文字と小文字の区別に影響します。つまり、Windows ではデータベース名とテーブル名の大文字と小文字は区別されませんが、ほとんどの種類の Unix では大文字と小文字が区別されます。
同じ引用文が存在するPDF 5.0 リファレンスマニュアル 806 ページ 同様にWEB 5.7 リファレンスマニュアル
さらに、変化この機能を使用すると、識別子の大文字と小文字が区別されなくなります。そのための手順はマニュアルに記載されています。
StackExchangeの別の回答必要な変更を簡単な英語で説明します。
ファイルの [mysqld] セクションを編集しますmy.cnf
。my.cnf
次の場所にあります:
LAMPP/XAMPP インストールの場合...:
/opt/lampp/etc/my.cnf
スタンドアロン MySQL サーバー:
/etc/mysql/my.cnf
そのセクションに行を追加します
lower_case_table_names = 1