VB.net Framework : OracleClient または Odbc によるアクセス


  System.Data.OracleClient 名前空間の使用




Imports System.Data.OracleClient

Module MyModule

' ********************************************************
' 接続 / 読み込み / 更新
' ********************************************************
Sub Main()

	' Oracle 接続用オブジェクト
	Dim myCon As New OracleConnection()
	' Oracle コマンド用オブジェクト
	Dim myCommand As New OracleCommand()
	' リーダ
	Dim myReader As OracleDataReader 
	' SQL文字列格納用
	Dim Query As String = Nothing

	' 接続文字列の作成
	myCon.ConnectionString = _
		"Server=night/xe;" + _
		"User ID=lightbox;" + _
		"Password=lightbox;"

	' *******************************************
	' 接続
	' *******************************************
	Try
		' 接続文字列を使用して接続
		myCon.Open()
		' コマンドオブジェクトに接続をセット
		myCommand.Connection = myCon
		' コマンドを通常 SQL用に変更
		myCommand.CommandType = System.Data.CommandType.Text
	Catch ex As Exception
		Console.WriteLine(ex.Message)
		Return
	End Try

	Query = "select * from 社員マスタ"
	myCommand.CommandText = Query

	' *******************************************
	' レコードセット取得
	' *******************************************
	Try
		myReader = myCommand.ExecuteReader
	Catch ex As Exception
		myCon.Close()
		Console.WriteLine(ex.Message)
		Return
	End Try

	' 列数
	Dim nCols As Integer = myReader.FieldCount
	Dim fldType As System.Type

	' カラムループ用
	Dim idx As Integer
	Do While myReader.Read()
		For idx = 0 To nCols - 1

			if idx <> 0 then
				Console.Write(",")
			end if

			' NULL でない場合
			If Not myReader.IsDBNull(idx) Then
				fldType = myReader.GetFieldType(idx)
				If fldType.Name = "String" Then

					Console.Write(myReader.GetValue(idx) + "")

				ElseIf fldType.Name = "Int32" Then

					Console.Write(myReader.GetInt32(idx).ToString() + "")

				ElseIf fldType.Name = "DateTime" Then

					Console.Write(myReader.GetDateTime(idx).ToString() + "")

				Else

					Console.Write(myReader.GetValue(idx).ToString() + "")

				End If
			Else
				Console.Write("")
			End If
		Next
		' 行の最後
		Console.WriteLine("")

	Loop

	' リーダを使い終わったので閉じる
	myReader.Close()


	' *******************************************
	' 更新 SQL 実行
	' *******************************************
	Query = "update 社員マスタ set 生年月日 = '2000/01/01' where 生年月日 is NULL"
	myCommand.CommandText = Query
	Try
		myCommand.ExecuteNonQuery()
	Catch ex As Exception
		myCon.Close()
		Console.WriteLine(ex.Message)
		Return
	End Try

	' *******************************************
	' 接続解除
	' *******************************************
	myCon.Close()

End Sub

End Module



System.Data.OleDb

MDB ( Access ) へのアクセス






  System.Data.Odbc 名前空間の使用




Imports System.Data.Odbc

Module MyModule

' ********************************************************
' 接続 / 読み込み / 更新
' ********************************************************
Sub Main()

	' Odbc 接続用オブジェクト
	Dim myCon As New OdbcConnection()
	' Odbc コマンド用オブジェクト
	Dim myCommand As New OdbcCommand()
	' リーダ
	Dim myReader As OdbcDataReader 
	' SQL文字列格納用
	Dim Query As String = Nothing

	' DSN接続文字列の作成
	myCon.ConnectionString = _
		"DSN=MySQL514;" + _
		"DATABASE=lightbox;" + _
		"UID=root;" + _
		"PWD=password;"

	' ドライバ使用接続文字列の作成
	'myCon.ConnectionString = _
	'	"Driver={MySQL ODBC 5.1 Driver};" + _
	'	"SERVER=localhost;" + _
	'	"DATABASE=lightbox;" + _
	'	"UID=root;" + _
	'	"PWD=password;" + _
	'	"Charset=sjis;"

	' ドライバ使用接続文字列の作成
	' ※ SERVER は TNS Service Name でも可
	'myCon.ConnectionString = _
	'	"Driver={Microsoft ODBC for Oracle};" + _
	'	"SERVER=pcname/ORCL;" + _
	'	"UID=lightbox;" + _
	'	"PWD=lightbox;"

	' Oracle 純正ドライバ使用接続文字列の作成
	' ※ DBQ は TNS Service Name でも可
	'myCon.ConnectionString = _
	'	"Driver={Oracle in XE};" + _
	'	"DBQ=pcname/ORCL;" + _
	'	"UID=lightbox;" + _
	'	"PWD=lightbox;"

	' *******************************************
	' 接続
	' *******************************************
	Try
		' 接続文字列を使用して接続
		myCon.Open()
		' コマンドオブジェクトに接続をセット
		myCommand.Connection = myCon
		' コマンドを通常 SQL用に変更
		myCommand.CommandType = System.Data.CommandType.Text
	Catch ex As Exception
		Console.WriteLine(ex.Message)
		Return
	End Try

	Query = "select * from 社員マスタ"
	myCommand.CommandText = Query

	' *******************************************
	' レコードセット取得
	' *******************************************
	Try
		myReader = myCommand.ExecuteReader
	Catch ex As Exception
		myCon.Close()
		Console.WriteLine(ex.Message)
		Return
	End Try

	' 列数
	Dim nCols As Integer = myReader.FieldCount
	Dim fldType As System.Type

	' カラムループ用
	Dim idx As Integer
	Do While myReader.Read()
		For idx = 0 To nCols - 1

			if idx <> 0 then
				Console.Write(",")
			end if

			' NULL でない場合
			If Not myReader.IsDBNull(idx) Then
				fldType = myReader.GetFieldType(idx)
				If fldType.Name = "String" Then

					Console.Write(myReader.GetValue(idx) + "")

				ElseIf fldType.Name = "Int32" Then

					Console.Write(myReader.GetInt32(idx).ToString() + "")

				ElseIf fldType.Name = "DateTime" Then

					Console.Write(myReader.GetDateTime(idx).ToString() + "")

				Else

					Console.Write(myReader.GetValue(idx).ToString() + "")

				End If
			Else
				Console.Write("")
			End If
		Next
		' 行の最後
		Console.WriteLine("")

	Loop

	' リーダを使い終わったので閉じる
	myReader.Close()


	' *******************************************
	' 更新 SQL 実行
	' *******************************************
	Query = "update 社員マスタ set 生年月日 = '2000/01/01' where 生年月日 is NULL"
	myCommand.CommandText = Query
	Try
		myCommand.ExecuteNonQuery()
	Catch ex As Exception
		myCon.Close()
		Console.WriteLine(ex.Message)
		Return
	End Try

	' *******************************************
	' 接続解除
	' *******************************************
	myCon.Close()

End Sub

End Module





yahoo  google  MSDN  MSDN(us)  WinFAQ  Win Howto  tohoho  ie_DHTML  vector  wdic  辞書  天気 


[dnettool]
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
24/04/20 17:02:15
InfoBoard Version 1.00 : Language=Perl

1 BatchHelper COMprog CommonSpec Cprog CprogBase CprogSAMPLE CprogSTD CprogSTD2 CprogWinsock Cygwin GameScript HTML HTMLcss InstallShield InstallShieldFunc JScript JScriptSAMPLE Jsfuncs LLINK OldProg OracleGold OracleSilver PRO PRObrowser PROc PROconePOINT PROcontrol PROftpclient PROjscript PROmailer PROperl PROperlCHAT PROphp PROphpLesson PROphpLesson2 PROphpLesson3 PROphpfunction PROphpfunctionArray PROphpfunctionMisc PROphpfunctionString PROsql PROvb PROvbFunction PROvbString PROvbdbmtn PROvbonepoint PROwebapp PROwin1POINT PROwinSYSTEM PROwinYOROZU PROwindows ProjectBoard RealPHP ScriptAPP ScriptMaster VBRealtime Vsfuncs a1root access accreq adsi ajax amazon argus asp aspSample aspVarious aspdotnet aw2kinst cappvariety centura ckeyword classStyle cmaterial cmbin cmdbapp cmenum cmlang cmlistbox cmstd cmstdseed cmtxt cs daz3d db dbCommon dbaccess dnettool dos download flex2 flex3 flex4 framemtn framereq freeWorld freesoft gimp ginpro giodownload google hdml home hta htmlDom ie9svg install java javaSwing javascript jetsql jquery jsp jspTest jspVarious lightbox listasp listmsapi listmsie listmsiis listmsnt listmspatch listmsscript listmsvb listmsvc memo ms msde mysql netbeans oraPlsql oracle oracleWiper oraclehelper orafunc other panoramio pear perl personal pgdojo pgdojo_cal pgdojo_holiday pgdojo_idx pgdojo_ref pgdojo_req php phpVarious phpguide plsql postgres ps r205 realC realwebapp regex rgaki ruby rule sboard sc scprint scquest sdb sdbquest seesaa setup sh_Imagick sh_canvas sh_dotnet sh_google sh_tool sh_web shadowbox shgm shjquery shvbs shweb sjscript skadai skywalker smalltech sperl sqlq src systemdoc tcpip tegaki three toolbox twitter typeface usb useXML vb vbdb vbsfunc vbsguide vbsrc vpc wcsignup webanymind webappgen webclass webparts webtool webwsh win8 winofsql wmi work wp youtube