VB.NETでSQLite3をDataGridView表示し文字化け解決 | ジャギオ@Ameba

VBNETでSQLite3をDataGridView表示したけど文字化け解決


惜しい!!!実に惜しい。


Windows上で無料&高速なDBMS「SQLite3」を

無料VB.NET開発環境「Visual Basic 2008 Express」を使いアプリ開発できないか試行錯誤中だけど、

今まで諦めていた「VBNETでSQLite3をDataGridView表示」ができた!でも、肝心な日本語が文字化けして使い物にならない。


「VBNETでSQLite3をDataGridView表示」は

今までに「Windows10(64bit)でSQLite3コマンド使いCSVからDB/table作成」して「VBScript」や「VB.NET」から「table create」「insert」「delete」「update」等のSQL基本操作は普通にできるようにはなった。


が、


せっかく「Microsoftのお手軽プログラム開発環境」の「Visual Basic 2008 Express」が使えるのだから、

「Excel等の表計算ソフト」みたいな「.NET Framework」の「DataGridView」表示して、快適なデータベース操作を使いたい目標がある。


でも、結論は「SQLite3」は「Microsoft環境」と「日本語」環境として相性が悪く、

せっかく「SQLite3単体ではtableのカラム名をCSVから自動的に日本語カラムを生成できる」のに、

VBScriptでは「文字化け」問題発生して、まともに使えない

「Visual Studio」の「データベースエクスプローラ」と「データソース」自動作成して「フォーム」に「DataGridView」コントロール貼り付け「データソース」をドラッグするだけで「簡単にデータベースアプリ開発できる」素晴らしさは分かったのに、

そこは「Microsoft社の戦略」で「このような便利な機能は【SQLite3】には使わせない仕組みがある」等の問題が解決できなくて諦めていた。


最近、またGoogle検索「ADODB.Recordset DataGridView」を探し回っていたら、

「SQLite3」を「ADODB.Recordset」で読んだ結果を「DataTable」「DataSet」を介して「DataGridView」表示する事ができた!


でも、文字化けして使い物にならない為、

当面は諦めて、別の方法で「DataGridView」は使う予定。でしたが、

「nkf」のWindows版の「nkf32.exe」で変換後にsqlite3にimportすれば、データの文字化けは解決しました。


SQLite3の文字化け回避にNKF使う方法は下記のブログが参考になりました。ありがとう!

(Linuxだけど)

SQLite3にパイプから.importする | 備忘LOG 


ただし、カラム名の日本語の文字化けだけは無理っぽいので、これこそ諦めます。




それより、

「AccessのACCDB」を使い簡単に「DataGridView」を文字化けしない使い方を優先するべきだろう。




以上です。#####