VB.NET
Imports System.Data.OracleClient
' ********************************************************
' * 実行
' ********************************************************
Sub Main()
Dim myCon As OracleConnection = New OracleConnection()
Dim myCommand As OracleCommand = New OracleCommand()
Dim myReader As OracleDataReader = Nothing
Dim sv As String = "night/xe"
Dim user As String = "lightbox"
Dim pass As String = "lightbox"
Dim myConnectString As String = _
"Server=" + sv + ";" + _
"User ID=" + user + ";" + _
"Password=" + pass + ";"
myCon.ConnectionString = myConnectString
' **************************************
' * 接続
' **************************************
Console.WriteLine("<pre>処理を開始しました")
Try
myCon.Open()
myCommand.Connection = myCon
Catch ex As Exception
myCon = Nothing
Console.WriteLine("接続エラーです")
Console.WriteLine("接続文字列=>" + myConnectString)
Console.WriteLine("システムのメッセージ=" + ex.Message)
Console.WriteLine("</pre>")
Exit Sub
End Try
Console.WriteLine("接続されました")
' **************************************
' * レコードセット取得
' **************************************
Dim Query As String = "select * from 社員マスタ"
myCommand.CommandText = Query
Try
myReader = myCommand.ExecuteReader()
Catch ex As Exception
Console.WriteLine("OracleDataReader 作成エラーです")
Console.WriteLine("システムのメッセージ=" + ex.Message)
myCon.Close()
Console.WriteLine("接続を閉じました")
Console.WriteLine("</pre>")
Exit Sub
End Try
' **************************************
' * データ取得
' **************************************
Dim bRead As Boolean = myReader.Read()
Dim nField As Integer = myReader.FieldCount
Dim nIdx As Integer
Dim strField As String
Console.WriteLine("<table>")
Do While bRead
Console.WriteLine("<tr>")
For nIdx = 0 to nField - 1
if myReader.IsDBNull(nIdx) then
strField = "<td></td>"
else
strField = "<td>" + myReader.GetValue(nIdx).ToString() + "</td>"
end if
Console.Write(strField)
Next
Console.WriteLine("")
Console.WriteLine("</tr>")
bRead = myReader.Read()
Loop
Console.WriteLine("</table>")
' **************************************
' * 接続解除
' **************************************
' 読み取りオブジェクトが閉じていない場合は、閉じる
If Not myReader Is Nothing Then
If Not myReader.IsClosed Then
myReader.Close()
Console.WriteLine("OracleDataReader を閉じました")
End If
End If
If Not myCon Is Nothing Then
' 接続を閉じる
If myCon.State = System.Data.ConnectionState.Open Then
myCon.Close()
Console.WriteLine("接続を閉じました")
End If
End If
Console.WriteLine("処理を終了しました</pre>")
End Sub
C#
using System.Data.OracleClient;
// ********************************************************
// * 実行
// ********************************************************
public void Main()
{
OracleConnection myCon = new OracleConnection();
OracleCommand myCommand = new OracleCommand();
OracleDataReader myReader = null;
string sv = "night/xe";
string user = "lightbox";
string pass = "lightbox";
string myConnectString = "Server=" + sv + ";" + "User ID=" + user + ";" + "Password=" + pass + ";";
myCon.ConnectionString = myConnectString;
// **************************************
// * 接続
// **************************************
Console.WriteLine("<pre>処理を開始しました");
try {
myCon.Open();
myCommand.Connection = myCon;
} catch (Exception ex) {
myCon = null;
Console.WriteLine("接続エラーです");
Console.WriteLine("接続文字列=>" + myConnectString);
Console.WriteLine("システムのメッセージ=" + ex.Message);
Console.WriteLine("</pre>");
return;
}
Console.WriteLine("接続されました");
// **************************************
// * レコードセット取得
// **************************************
string Query = "select * from 社員マスタ";
myCommand.CommandText = Query;
try {
myReader = myCommand.ExecuteReader();
} catch (Exception ex) {
Console.WriteLine("OracleDataReader 作成エラーです");
Console.WriteLine("システムのメッセージ=" + ex.Message);
myCon.Close();
Console.WriteLine("接続を閉じました");
Console.WriteLine("</pre>");
return;
}
// **************************************
// * データ取得
// **************************************
bool bRead = myReader.Read();
int nField = myReader.FieldCount;
int nIdx = 0;
string strField = null;
Console.WriteLine("<table>");
while (bRead) {
Console.WriteLine("<tr>");
for (nIdx = 0; nIdx <= nField - 1; nIdx++) {
if (myReader.IsDBNull(nIdx)) {
strField = "<td></td>";
} else {
strField = "<td>" + myReader.GetValue(nIdx).ToString() + "</td>";
}
Console.Write(strField);
}
Console.WriteLine("");
Console.WriteLine("</tr>");
bRead = myReader.Read();
}
Console.WriteLine("</table>");
// **************************************
// * 接続解除
// **************************************
// 読み取りオブジェクトが閉じていない場合は、閉じる
if ((myReader != null)) {
if (!myReader.IsClosed) {
myReader.Close();
Console.WriteLine("OracleDataReader を閉じました");
}
}
if ((myCon != null)) {
// 接続を閉じる
if (myCon.State == System.Data.ConnectionState.Open) {
myCon.Close();
Console.WriteLine("接続を閉じました");
}
}
Console.WriteLine("処理を終了しました</pre>");
}