朧の.Netの足跡
問合せ先:support@oborodukiyo.info サイト内検索はこちら 
ADO.NET ORACLEへの接続方法





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
        








良いやや良い普通やや悪い悪い

投稿日時評価コメント