.NET Framework は文字セット 'utf8mb3' をサポートしていません: System.NotSupportedException
P粉063039990
P粉063039990 2023-10-19 17:44:27
0
2
1205

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

リーリー


P粉063039990
P粉063039990

全員に返信(2)
P粉647449444

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

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

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

いいねを押す +0
P粉683665106

私の場合、デフォルトで 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
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート