MySQL データベースを備えたサーバーを実行しようとしていますが、この大きなエラーが発生し続けます。理由がわかりません。
MySQL コネクタで利用できる アップデート/NET があります。
MySql.Data) に更新すると、すべてが正常に戻ります。
私の場合、デフォルトで utf8mb3 を使用して 10.6.4-MariaDB をインストールしました。
utf8mb3
10.6.4-MariaDB
テーブルを読み取ろうとしたときに同じエラーが発生しました。
MariaDB 構成のすべての文字セット設定を utf8mb4 に変更することで問題を修正しました。
utf8mb4
その後、データベースをダンプして、再度インポートします。今回はデータベース作成時に utf8mb4 を指定します。
したがって、通常の SELECT、UPDATE クエリは正常に動作し、エラーは発生しません。
SELECT
UPDATE
しかし、アプリケーションがストアド プロシージャを呼び出すと、エラーが発生し続けます。
これは、ストアド プロシージャが information_schema データベースに保存されているためだと思いますが、データベースはまだ utf8mb3 であり、これを > に変更する方法が見つかりません。 utf8mb4.
information_schema
> に変更する方法が見つかりません。 utf8mb4
奇妙な回避策を実装するために多くの時間を費やした後、次のバグ レポートを見つけました。
C# クライアント アプリケーションから MariaDB 10.6 を使用できない: https://jira.mariadb.org/browse/MDEV-26105?attachmentViewMode=List
リーリー
MySQL コネクタで利用できる アップデート/NET があります。
バージョン 8.0.28 (NuGet パッケージMySql.Data
) に更新すると、すべてが正常に戻ります。
私の場合、デフォルトで
utf8mb3
を使用して10.6.4-MariaDB
をインストールしました。テーブルを読み取ろうとしたときに同じエラーが発生しました。
MariaDB 構成のすべての文字セット設定を
utf8mb4
に変更することで問題を修正しました。その後、データベースをダンプして、再度インポートします。今回はデータベース作成時に
utf8mb4
を指定します。したがって、通常の
SELECT
、UPDATE
クエリは正常に動作し、エラーは発生しません。しかし、アプリケーションがストアド プロシージャを呼び出すと、エラーが発生し続けます。
これは、ストアド プロシージャが
information_schema
データベースに保存されているためだと思いますが、データベースはまだutf8mb3
であり、これを> に変更する方法が見つかりません。 utf8mb4
.奇妙な回避策を実装するために多くの時間を費やした後、次のバグ レポートを見つけました。
C# クライアント アプリケーションから MariaDB 10.6 を使用できない:
あるユーザーはこう言いました:https://jira.mariadb.org/browse/MDEV-26105?attachmentViewMode=List
リーリー
したがって、ストアド プロシージャを実行する前に、これを VB プロジェクトに追加することになりました。リーリー
これでエラーは解決しました。リーリー