2

Sqlite を使用してローカル データベースを作成しています。コマンド ライン ツールでデータベースを作成し、sqlite admin でテーブルを作成します。

私が持っているテーブルの 1 つの情報は、「Ñ」文字で登録されています。このレジスタは、sqlite admin で実行する sql ステートメントによって挿入されます。

sqlite admin で select を実行すると、文字 "Ñ" が正しいことがわかりますが、エンティティ フレームワークとライブラリ System.Data.Sqlite を使用すると、受け取る文字列は "?" になります。または他の奇妙な文字(UTF8、UTF7、ASCII、UTF32を使用しようとしました...)が、すべての場合で奇妙な文字が表示されます。

データベースですべてが正しいと思われるのに、なぜこの文字を受け取ったのか知りたいです。System.Data.Sqlite ライブラリにバグがある可能性はありますか?

ありがとう。ダイモロク。

4

1 に答える 1

1

さて、私は他のsqlite管理者であるsqlite spyを使用しており、この場合、文字が「?」と表示されるので、登録を更新し、この管理者(sqlite spy)で正しいようになりました。

次に、C# アプリケーションを再度実行したところ、すべてが正しくなりました。問題は、SQL ステートメントを使用するときに、文字列にこの種の文字が含まれていると、sqlite 管理者が正しく機能しないことです。

したがって、解決策は、他の sqlite 管理者を見つけることです。たとえば、この場合は問題なく動作する sqlite spy です。

ありがとう。ダイムロック。

于 2012-10-10T09:15:55.567 に答える