ちょっとVBも勉強してみようかと。 ってか、VC# にてこずっているので、手っ取り早くVBに逃げてる!?
ローカルのアプリとして動かしたいので、DBは、とりあえずSQLiteにしてみる。
■SQLiteをVBで使用する: よしなしごと
http://trivia.cocolog-nifty.com/blog/2008/12/sqlitevb-e6c5.htmldotConnect for SQLite インストールしたが、
VSのツールボックスに [SQLite Data] が出てこない。。。
■Installation … dotConnect for SQLite のヘルプページ
http://www.devart.com/dotconnect/sqlite/docs/Installation.html手動で設定する必要があるもよう。 がんばって読むに、
VS入れる前に、dotConnectが入っている場合はVS入れた時に、ツールボックスに入ってるみたいだけど、既にVS入れた後で、dotConnect入れた場合は、手動でやってね。 って感じか?
ツールボックス上、タブの追加 して、[SQLite Data] と名前をつける。
アイテムの選択で、.NET Framework コンポーネント内、名前空間 でソートして、対象モジュール("Devart" で始まるモジュールを全て選択する。
その他メモ:
・使うときに、Import文を入れる。入れないと、コンパイルエラーになる。。。
Imports Devart.Data.SQLite
・デザイン画面で、[SQLiteConnection]をフォームにドラッグドロップする。
で、できたコントロールを右クリック→Conect を選び、Data Source に対象DBのパスを設定する。
これにより、プログラム中には、接続するDBについての記載がなくてもいい。
↓サンプル
※フォーム上に、以下のコントロールがあるとして、
[SQLiteConnection] のコントロール → SqLiteConnection1
[Button] のコントロール → Button1
----------------------------------------------------
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim strSelectQuery As String = "SELECT * FROM テーブル名" Dim sqlCommand As New SQLiteCommand(strSelectQuery, SqLiteConnection1) SqLiteConnection1.Open() Dim sqlReadBuf As SQLiteDataReader = sqlCommand.ExecuteReader() Dim strData1, strData2, strData3, strData4 As String Try While sqlReadBuf.Read() strData1 = sqlReadBuf.GetString(0) strData2 = sqlReadBuf.GetString(1) strData3 = sqlReadBuf.GetString(2) strData4 = sqlReadBuf.GetString(3) Debug.Print("0[" & strData1 & "] " _ "1[" & strData2 & "] " _ "2[" & strData3 & "] " _ "4[" & strData4 & "]") End While Finally sqlReadBuf.Close() SqLiteConnection1.Close() End TryEnd Sub
----------------------------------------------------