以下のコードを実行しようとすると、mysql
エラー 1305が発生します。
DROP FUNCTION IF EXISTS myFunction;
関数が存在しない場合にのみ失敗します。しかし、なぜ?関数を再作成する前のクリーンアップ手順ではありませんか?
MySQLバグ #33813は、大文字と小文字の区別が原因である可能性があると説明しています。
MySQL 5.0.52 以降、スキーマ修飾された関数名を取る DROP FUNCTION コマンドは、lower_case_table_names が 1 に設定されている場合でも、大文字と小文字を区別してスキーマ名を比較します。これは、関数が正しく識別されないことを意味します。