Bu makalede C# ile Access veritabanı dosyasına bağlanıp bu veritabanındaki bir tablonun sütun adlarını nasıl çekeceğinizi öğreneceksiniz. Örneğimizde Formumuza 1 Button ve 1 ListBox denetimi ekliyoruz.
C# programlama dilinde bir butona tıklandığında Access veritabanındaki tablodaki sütun adlarını bir listbox’a aktarmak için şu adımları izleyebilirsiniz:
- İlk olarak, projenize Access veritabanını eklemelisiniz. Bunu yapmak için, Visual Studio’nun Solu Explorer panelinde projenize sağ tıklayın ve “Add” > “Existing Item” seçeneklerini seçin. Ardından, Access veritabanınızı seçin ve “Add” düğmesine tıklayın.
- Ardından, programınızda kullanacağınız veritabanı nesnesini oluşturmanız gerekiyor. Bunun için, System.Data.OleDb ad alanını eklemelisiniz ve OleDbConnection sınıfını kullanarak veritabanı bağlantısı oluşturun.
1 2 3 4 5 6 | using System.Data.OleDb; OleDbConnection connection = new OleDbConnection(); connection.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=veritabani.accdb"; |
Burada, veritabanı dosyasının yolu ve adı “Data Source” parametresinde belirtilmiştir.
- Daha sonra, Access veritabanındaki sütun adlarını almak için bir SQL sorgusu hazırlamanız gerekiyor. Bu sorguyu OleDbCommand sınıfı kullanarak oluşturabilirsiniz. Sorgu, “INFORMATION_SCHEMA.COLUMNS” tablosunu kullanarak veritabanındaki tüm sütun adlarını alacaktır.
1 2 3 4 5 | OleDbCommand command = new OleDbCommand(); command.Connection = connection; command.CommandText = "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'tablo_adi'"; |
Burada, “tablo_adi” yerine, sütun adlarını almak istediğiniz tablonun adını yazmanız gerekiyor.
- Son olarak, sorgudan dönen sütun adlarını bir diziye aktarın ve bu dizi elemanlarını listbox’a ekleyin.
1 2 3 4 5 6 7 8 9 10 11 12 | connection.Open(); OleDbDataReader reader = command.ExecuteReader(); while (reader.Read()) { listBox1.Items.Add(reader["COLUMN_NAME"].ToString()); } connection.Close(); |
Tüm kodlar bir buton tıklaması olayına atanarak uygulama çalıştırıldığında butona basıldığında sütun adları listelenecektir.