Window WebサーバーからLinuxに移行したアプリケーションを扱っています。アプリケーション CASE-SENSITIVE にはすべてのクエリがありますが、DB のテーブル名は小文字です。MySQL サーバーにすべての着信クエリを小文字に変換させる方法はありますか?
例えば:
アプリケーションでは、次のクエリがあります。
SELECT *
FROM TableName;
しかし、DB テーブルには名前があります: 'tablename'
したがって、すべてのクエリを小文字に変換して次のようにする必要があります。
これから :
SELECT *
FROM TableName;
これ作って:
SELECT *
FROM tablename;
アプリケーションには数千のクエリがあり、DB にはおそらく 100 以上のテーブルがあります。したがって、アプリケーションでDBテーブルまたはクエリの名前を変更することはSUICIDEであると判断しました。
やってみた(これ)
- MySQL サーバーをオフにする
- /etc/mysql/my.conf で、lower_case_table_names = 1 を設定します
- MySQL サーバーをオンにする
- DB のインポート
しかし、それは私を助けません、それでもそれは言います:
テーブル 'testdb.tableName' が存在しません
アドバイスありがとうございます:)
編集:アプリケーションではクエリが組み合わされています。つまり、CASE-Sensitive クエリと InCase センシティブ クエリがあります。多くの開発者がそれに取り組みましたが、コード作成のルールを尊重していませんでした。そのため、クエリを小文字に変換したい