SQLの窓

2011年09月03日


VB.net 2008 : System.Data.Odbc データ取得(SELECT)処理( MySQL 5.1 )



以下のソースコードはデータ取得部分のみの記述です。接続処理等、その他のコードは上からダウンロードしてご確認下さい。

この処理の元となる記事

VB.net 2008 : System.Data.Odbc 接続テスト( MySQL 5.1 )
Sub Main()

	' 新しい OdbcConnection オブジェクトを作成
	Dim myCon As OdbcConnection = CreateConnection()

	if myCon is Nothing then
		Console.WriteLine("処理が異常終了しました")
		Return
	end if

	'---------------------------------------------------

	' レコードセットを取得する為の SQL を準備
	Dim myQuery As String = _
		"SELECT `社員マスタ`.*,DATE_FORMAT(`生年月日`,'%Y-%m-%d') as `誕生日`" _
		+ " from `社員マスタ`"

	' SELECT 実行用のオブジェクトを作成( クラスは更新用と同じです )
	' コンストラクタを使うと以下のようになります
	' Dim execCommand As New OdbcCommand( myQuery, myCon )
	Dim myCommand As OdbcCommand = New OdbcCommand()
	' 実行する為に必要な情報をセット
	myCommand.CommandText = myQuery
	myCommand.Connection = myCon

	' 実行後にレコードセットを取得する為のオブジェクトを作成
	Dim myReader As OdbcDataReader
	' ここで SELECT を実行してその結果をオブジェクトに格納する
	myReader = myCommand.ExecuteReader()

	' 読み出し
	' Rewad メソッドは、行が存在する場合は true、それ以外の場合は false を返します
	Do While myReader.Read()

		' 文字列
		Console.Write(GetValue(myReader,"社員コード") + " : ")
		Console.Write(GetValue(myReader,"氏名") + " : ")

		' 整数
		Console.Write(GetValue(myReader,"給与") + " : ")

		' 日付
		Console.Write(GetValue(myReader,"作成日") + " : ")
		Console.Write(GetValue(myReader,"更新日") + " : ")
		Console.Write(GetValue(myReader,"生年月日") + " : ")
		Console.Write(GetValue(myReader,"誕生日"))

		Console.WriteLine()

	Loop

	myReader.Close()


	'---------------------------------------------------

	Call EndConnection( myCon )



End Sub

' *************************************************
' 列データ取得
'
' 列データを文字列として取得しますが、NULL の場合は
' 空文字列を返します
' *************************************************
Function GetValue( myReader As OdbcDataReader, _
	strName As String) As String

	Dim ret As String = ""
	Dim fld As Integer = 0

	' 指定された列名より、テーブル内での定義順序番号を取得
	fld = myReader.GetOrdinal(strName)
	' 定義順序番号より、NULL かどうかをチェック
	If myReader.IsDBNull(fld) Then
		ret = ""
	Else
		' NULL でなければ内容をオブジェクトとして取りだして文字列化する
		ret = myReader.GetValue(fld).ToString()
	End If

	' 列の値を返す
	Return ret

End Function


SQL 実行部分は、読み込み部分が解りやすくなるように、エラー処理を省略しています


posted by lightbox at 2011-09-03 15:58 | VB.NET : データベース | このブログの読者になる | 更新情報をチェックする
バッチ処理

Microsoft Office
container 終わり

フリーフォントで簡単ロゴ作成
フリーフォントでボタン素材作成
フリーフォントで吹き出し画像作成
フリーフォントではんこ画像作成
ほぼ自由に利用できるフリーフォント
フリーフォントの書体見本とサンプル
画像を大きく見る為のウインドウを開くボタンの作成

Android SDK ポケットリファレンス
改訂版 Webデザイナーのための jQuery入門
今すぐ使えるかんたん ホームページ HTML&CSS入門
CSS ドロップシャドウの参考デモ
Google Hosted Libraries
cdnjs
BUTTONS (CSS でボタン)
イラストAC
ぱくたそ
写真素材 足成
フリーフォント一覧
utf8 文字ツール
右サイド 終わり
base 終わり