1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Visual C#でODP.NETによるオラクルデータベース情報を取得し、gridviewへの表示してみた!

Last updated at Posted at 2024-12-23

概要

 Visual C#でODP.NETによるオラクルデータベースのテーブル情報を取得し、gridviewへ表示する実装について学習しました。その内容について紹介します。:relaxed:

目次

1.動作環境
2.環境準備
3.Visual C#起動、コードの入力
4.動作結果

1.動作環境

動作環境は以下の通りです。
-Visual Studio 2022 - Community 2022
-Oracle Database21c for Microsoft Windows x64

2.環境(事前準備)

 事前準備として、以下を実施します。
-Visual Studio 2022 - Community 2022インストール
インストーラは次から取得しました。デフォルトでインストールします。
Visual Studio 2022 IDE - ソフトウェア開発者向けプログラミング ツール
-Oracleデータベース
 オラクルデータベースのインストールから、テーブル作成まで行います。
【Oracleデータベース】Windowsでインストールからテーブル作成まで

3.Visual C#起動、コードの入力

以下、Visual C#を起動した上で行います。
ODP.NETインストールをインストールします。

-ODP.NETインストール
ODP.NETをNuGetからインストールする

DAOUtil.csクラスを生成し、以下のコードを入力します。

DAOUtil.cs
using Oracle.ManagedDataAccess.Client;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WindowsFormsApp1
{
    internal class DAOUtil
    {

        public DataSet getTable1()
        {
            string conString = "User Id=user1; password=user1;" +

            //EZ Connect Format is [hostname]:[port]/[service_name]
            //Examine working TNSNAMES.ORA entries to find these values
            "Data Source=localhost:1521/orclpdb; Pooling=false;";

            //Create a connection to Oracle

            OracleConnection con = new OracleConnection();
            con.ConnectionString = conString;
            con.Open();

            OracleDataAdapter da = new OracleDataAdapter("select * from table1", con);

            // データセットの作成
            DataSet ds = new DataSet();
            // データをデータセットにフィル
            da.Fill(ds);

            con.Close();

            return ds;
        }
    }

}

次にForm1.csにボタンを追加し、ボタン押下時の処理として以下のコードを入力します。

Form1.cs
        private void button1_Click(object sender, EventArgs e)
        {
            // データセットの作成
            DAOUtil dao = new DAOUtil();
            DataSet ds = dao.getTable1();

            // データセット内のデータを表示
            foreach (DataRow row in ds.Tables[0].Rows)
            {
                Console.WriteLine(string.Join(", ", row.ItemArray));
                //行の追加
                dataGridView1.Rows.Add(row.ItemArray[0], row.ItemArray[1], row.ItemArray[2]);
            }
        }

4.動作結果

「DAO利用の検索」ボタンを押すと、gridviewにデータベースのデータが表示追加されます。

image.png

データベースの内容を一致していることを確認

オラクルデータベースにA5:SQL Mk-2ツールで接続し、table1テーブルを表示しました。gridviewに表示された内容と一致していることを確認できました。:grin:
image.png

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?