calendar

S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930
31      
<< March 2024 >>









categories

archives



C#で、データベースの内容をテキストボックスに表示する

0

    C#で、データベースの内容をテキストボックスに表示する

     

    C#で何とかデータベース(ACCESSのaccdbファイル)につなぐことができた。

     

    見よう見まねで何とか進んできたが、データベースの1行の内容を表示するのでつまづいた。

     

    「C# データベース テキストボックス」で検索したところ、何件か出てきた。

     

    「よし!」思い、何件か挑戦するが、初心者の私にはどれも難しすぎて断念

     

    唯一、簡単そうだったのかこれ

     

    http://oshiete.goo.ne.jp/qa/2734657.html

     


    SqlDataReader dr = cmd.ExecuteReader();

     

    dr.GetValue(0)
    dr.GetValue(1)
    dr.GetValue(2)

    データベースがaccdbなのでSqlDataReaderをSystem.Data.OleDb.OleDbDataReaderに変え

     

    いざ挑戦・・・あれ!

     

    エラーでる。

     

    こうなると初心者はお手上げである。

     

    プログラムになれている人にとってはなんてことない内容なのでしょうが

    初心者の私には、根本的に何が問題かもわからない状態だ。

     

    オブジェクトがストリングに変換できない。

     

    ならキャストとしたのですが、やり方が悪いらしく・・・NG

     

    何とも情けない話です。

     

    そこで、「C# オブジェクトをストリングに変換」としてググってみたら

     

    http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1318424703

     

    このような方法が・・・なるほど
    object obj = "test";
    string s1 = (string)obj;
    string s2 = Convert.ToString(obj);



    これで、何とか解決できました。

     

    仮に私のような初心者がいた場合に、一発で参考になれますように、

     

    ソースを記述しておきます。

     

     private void Form5_Load(object sender, EventArgs e)
    {
        label1.Text = Form4.ttc;

        System.Data.OleDb.OleDbCommand com;
       
         System.Data.OleDb.OleDbConnection cn = new System.Data.OleDb.OleDbConnection(
        "Provider=Microsoft.ACE.OLEDB.12.0;"
         + "Data Source=C:¥¥DATA¥¥Database1.accdb; ");

        cn.Open();
        com = new System.Data.OleDb.OleDbCommand("SELECT * FROM kaisya WHERE ID=1", cn);
       
        System.Data.OleDb.OleDbDataReader dr = com.ExecuteReader();

        if(dr.Read())
        {
            textBox2.Text = Convert.ToString(dr.GetValue(0));
            textBox3.Text = Convert.ToString(dr.GetValue(1));
        }
        dr.Close();
        cn.Close();

    }

     

    また、一つ賢くなったようです。


    | 1/1PAGES |