[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
System.Data.SQLiteを用いたDBプログラミング。
DBから値を取得するには、DataReaderとDataAdapterを用いた方法があるが、DataReaderを使った取得方法の自分メモ。
Dim SQLString As String
Dim MyConnectionString As String = "data source={0}"
Dim MySQLiteConnection As New SQLiteConnection
MyConnectionString = String.Format(MyConnectionString, _
System.IO.Path.Combine(My.Application.Info.DirectoryPath, "Hoge.db"))
Try
MySQLiteConnection.ConnectionString = MyConnectionString
MySQLiteConnection.Open()
Debug.Print("DB Open")
SQLString = "SELECT * FROM EMP"
Dim MySQLiteCommand As New SQLiteCommand(SQLString, MySQLiteConnection)
Debug.Print(SQLString)
Dim MySQLiteDataReader As SQLiteDataReader
MySQLiteDataReader = MySQLiteCommand.ExecuteReader()
Dim i As Integer = 0
Do While MySQLiteDataReader.Read
Me.BoardDataGridView.Rows.Add()
Me.BoardDataGridView.Rows(i).Cells(0).Value = MySQLiteDataReader.GetValue(0)
Me.BoardDataGridView.Rows(i).Cells(1).Value = MySQLiteDataReader.GetValue(1)
i = i + 1
Loop
Catch ex As Exception
MessageBox.Show(ex.Message, "DB Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Finally
MySQLiteConnection.Close()
Debug.Print("DB Close")
End Try
実際には、参考URLにあるように、Usingを用いたものの方が望ましいようだ。
Usingステートメントで簡単、確実にファイルをクローズ - @IT
VisualStudioにて、DBファイルを追加するには、次URLにあるように、データソースを追加した後、プロジェクトに既存項目追加で設定する。
[C#][SQLite]System.Data.SQLiteを試してみた
VSのデータソースからDataGrid追加を用いれば、上ソースのように、自分でDataGridに行を設定する必要がなく楽である。
(どちらの方が、パフォーマンス優位かは不明)
参考:
SQLiteを使ったWindowsアプリを作成する
VB.Netでソート2 - FloralCompany.log
システム開発の入門者から中級者にステップアップするための10のティップス - builder by ZDNet Japan
新人プログラマーがプロのプログラマーとして独り立ちするための7つの条件 - ハックルベリーに会いに行く
35年定年説はどうかと思うが、ずっとプログラマーではいられないと私は思っている。
残念ながら私には天才的なコードを書くセンスもなければ、仕事としてプログラミングを続けていく気概が端から無い。
ならば、ステップアップして上流工程に関わっていくしかない。
なにより、上に行きたいという向上心は大切だろう。
仮にPGであり続けるとしても、早くの段階から上を意識しているのとそうでないのでは、伸びしろが明らかに異なる。
Java Review:JavaVMのメモリ管理をマスターする (1/2) - ITmedia エンタープライズ
オブジェクト指向が浸透して随分経つ。
オブジェクト指向において、ガベージコレクションは切っても切れない概念であり、メモリを有効に使うには、その仕組みを知ることも大切である。
普段プログラミングをしていて、特に意識するものではないが、だからこそ、見落としてしまう点も多い。
教養の一つとしてクリップしておく。
直交変換として有名なフーリエ変換は、変換核として三角関数を用いる。
一方、ウォルシュ・アダマール変換(Walsh Hadamard Transform: 以下WHT)は、矩形関数を変換核として用いる。
アルゴリズムを最後に述べるが、矩形関数を用いるため、定数倍を除いてWHTは加減算のみとなり、実際はフーリエ変換等より高速に処理を行うことができる。
そのため、一時期は熱心に研究された。
しかし、昨今のハードウェアの進歩により、今日ではそれほど魅力的ではなくなっている。
それでも、幾らかは利用価値はあるし、知識の一つとしても損は無いと思える。
また、WHTはインターネット上で調べても、あまり資料が発見できない。
よって、少しでも必要とするものの助けになれば幸いである。

