検索

ホームページ  >  に質問  >  本文

.NET Framework は文字セット 'utf8mb3' をサポートしていません: System.NotSupportedException

MySQL データベースを備えたサーバーを実行しようとしていますが、この大きなエラーが発生し続けます。理由がわかりません。

リーリー


P粉063039990P粉063039990496日前1464

全員に返信(2)返信します

  • P粉647449444

    P粉6474494442023-10-20 17:11:15

    MySQL コネクタで利用できる アップデート/NET があります。

    バージョン 8.0.28 (NuGet パッケージ

    MySql.Data) に更新すると、すべてが正常に戻ります。

    返事
    0
  • P粉683665106

    P粉6836651062023-10-20 12:08:27

    私の場合、デフォルトで utf8mb3 を使用して 10.6.4-MariaDB をインストールしました。

    テーブルを読み取ろうとしたときに同じエラーが発生しました。

    MariaDB 構成のすべての文字セット設定を utf8mb4 に変更することで問題を修正しました。

    その後、データベースをダンプして、再度インポートします。今回はデータベース作成時に utf8mb4 を指定します。

    したがって、通常の SELECTUPDATE クエリは正常に動作し、エラーは発生しません。

    しかし、アプリケーションがストアド プロシージャを呼び出すと、エラーが発生し続けます。

    これは、ストアド プロシージャが information_schema データベースに保存されているためだと思いますが、データベースはまだ utf8mb3 であり、これを > に変更する方法が見つかりません。 utf8mb4.

    奇妙な回避策を実装するために多くの時間を費やした後、次のバグ レポートを見つけました。

    C# クライアント アプリケーションから MariaDB 10.6 を使用できない:
    https://jira.mariadb.org/browse/MDEV-26105?attachmentViewMode=List

    あるユーザーはこう言いました:

    リーリー

    したがって、ストアド プロシージャを実行する前に、これを VB プロジェクトに追加することになりました。

    リーリー

    これでエラーは解決しました。

    また、以前に MariaDB サーバー構成で変更した内容は次のとおりです:

    リーリー

    返事
    0
  • キャンセル返事