2012-03-31 5 views
0

私はMS-Accessのテーブルから一つのデータ列を取得し、この方法であなたのOpen_Database_button_Clickを変更しようとするこのデータベースからデータを読み取り、それをTextBoxに表示するにはどうすればよいですか?

public partial class Form1 : Form 
{ 
    public OleDbConnection database; 

    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private OleDbConnection Database_Connection; 

    private void Open_Database_button_Click(object sender, EventArgs e) 
    { 
     Database_Connection = new OleDbConnection(
      "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="test.mdb"); 
     OleDbCommand Command = new OleDbCommand(
      " SELECT top 1 * from test", Database_Connection); 
     Database_Connection.Open(); 
     OleDbDataReader DB_Reader = Command.ExecuteReader(); 

     // How can I display the column in TextBox? 
    } 

    ... 
} 
+0

列ではなくレコードまたはフィールドを表示することを意味しますか?また、データベース接続を閉じることを忘れないでください。 – DOK

+0

ディスプレイレコード、ok私は接続を閉じます – Wizard

答えて

3

のようにテキストボックスに表示してみてください。

私が変更されている何
private void Open_Database_button_Click(object sender, EventArgs e) 
{ 
    using(OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb")) 
    using(OleDbCommand Command = new OleDbCommand(" SELECT top 1 * from test", con)) 
    { 
     con.Open(); 
     OleDbDataReader DB_Reader = Command.ExecuteReader(); 
     if(DB_Reader.HasRows) 
     { 
      DB_Reader.Read(); 
      textbox1.Text = DB_Reader.GetString("your_column_name"); 
     } 
    } 
} 

/追加:

  • は、グローバルのvar DataBase_Connection
  • 追加を削除しました使い捨てのオブジェクトへので、彼らは自動的に は の値を持つテキストボックスのテキストプロパティの クエリ
  • 追加設定から空の結果を除外するDB_Reader.HasRowsにはもっと必要
  • 追加チェックを閉じません列の1つ
+0

きれいに書かれた、スティーブ。 – DOK

関連する問題