前回は SQLiteでInsert文を使用する方法について説明しました。
データを追加したら、やはり取得できなくては意味がないですね。
ということで、今回はSELECT文を使用する方法について説明します。
INSERT文の時と異なる部分は、ヒア文字列の中身がSELECT文になるということ、
コマンドの実行が、ExecuteNonQueryからExecuteReaderに代わることです。
ExequteRederは実行したSQL文で影響を受けた行が返されます。
戻り値のReadメソッドを実行すると、SQL文に合致するレコードの有無がわかるので、While文でループして各データの取り出しを行います。
[void][System.Reflection.Assembly]::LoadFile("C:\Work\DB\System.Data.sqlite.dll") $sqlite = New-Object System.Data.SQLite.SQLiteConnection $sqlite.ConnectionString = "Data Source = C:\Work\DB\data.db" $sqlite.Open() #SELECT文 $cmd = @" SELECT * FROM USER "@ $sqlcmd = New-Object System.Data.SQLite.SQLiteCommand $sqlcmd.Connection = $sqlite $sqlcmd.CommandText = $cmd $record = $sqlcmd.ExecuteReader() while ( $record.Read() ) { write ("{0}`t{1}" -f $record[0], $record[1]) } $sqlite.Close()