ADO.NETの基本はどのデータベースに対しても同じだと思います。
(1)接続情報を用意する。
(2)コネクションを用意する。
(3)SQL文のコマンドを用意する。
(4)各データベースの種類ごとのDataAdapterを用意して、先のコネクションとSQL文を実行する。
(5)SELECT文などの戻り値があれば、要したDataTableなどに格納して表示する。
ORACLEに接続するためには、オラクルクライアントをインストールしておいて、Oracle.DataAccess.Clientをインポートして、そこで定義されているクラスを利用します。
(1)OracleConnectionStringBuilderクラス。接続情報を作成するヘルパークラスです。
(2)OracleConnectionクラス。ORACLEとの接続を担うクラスです。
(3)OracleCommandクラス。実行したいSQL文を設定するクラスです。SELECTだけではなく、UPDATEやINSERTなどもこれを利用します。
(4)OracleDataAdapterクラス。ORACLEとのやり取りを担ってくれるクラスです。
なお32bitアプリでは動作しません。対象を64bitでコンパイルしてください。
ORACLE特有な接続情報は、DataSourceにはプラガブルデータベースを指定します。
C#
//Oracleなのでこれを設定します。
using Oracle.DataAccess.Client;
namespace ADONET_ORACLE
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable();
//Oracleへの接続情報の設定をします。
OracleConnectionStringBuilder builder = new OracleConnectionStringBuilder();
builder.UserID = "system";
builder.Password = "password";
builder.DataSource = "pdborcl";
//接続情報を使ってコネクションを生成します。
using (OracleConnection conn = new OracleConnection(builder.ConnectionString))
{
//SQL文とコネクションを設定します。
using (OracleCommand cmd = new OracleCommand("SELECT * FROM user_tables", conn))
{
//Oracleへの橋渡しのアダプターを設定します。
OracleDataAdapter oda = new OracleDataAdapter();
//SELECTコマンドを設定します。
oda.SelectCommand = cmd;
//SELECTの実行及びフェッチ
oda.Fill(dt);
//グリッドに表示します。
this.dataGridView1.DataSource = dt;
}
}
}
}
}
VB.NET
Imports Oracle.DataAccess.Client
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim dt As DataTable = New DataTable()
'Oracleへの接続情報の設定をします。
Dim builder As OracleConnectionStringBuilder = New OracleConnectionStringBuilder()
builder.UserID = "system"
builder.Password = "password"
builder.DataSource = "pdborcl"
'接続情報を使ってコネクションを生成します。
Using conn As New OracleConnection(builder.ConnectionString)
'SELECTコマンドを設定します。
Using cmd As New OracleCommand("SELECT * FROM user_tables", conn)
'Oracleへの橋渡しのアダプターを設定します。
Dim oda As OracleDataAdapter = New OracleDataAdapter()
oda.SelectCommand = cmd
'SELECTの実行及び保存
oda.Fill(dt)
'グリッドに表示します。
Me.DataGridView1.DataSource = dt
End Using
End Using
End Sub
End Class
| 良い | やや良い | 普通 | やや悪い | 悪い |
|---|---|---|---|---|
| 1 | 1 | 0 | 0 | 0 |
| 投稿日時 | 評価 | コメント |
|---|---|---|
| 2022/05/19 | 良い | 助かりました。 VBの資料が少なくて困っていました。 感謝です!! |