C# İki ayrı Access tablosunun verilerini tek DataGridView de Gösterme
Merhabalar bugün sizlere benimde kullandığım birden fazla tablodan tek bir gridde veri çekmeyi anlatacağım. Anlatacağım bu yöntem ile bir datagrid ile istediğiniz tablodan istediğiniz veriyi çekebilirsiniz. Şimdi kodlar üzerinden anlatmaya devam edelim :
OleDbConnection bag = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=veri/veri.accdb"); //Veritabanı yolu DataSet dtst = new DataSet(); OleDbDataAdapter adtr = new OleDbDataAdapter(); OleDbCommand cmd; OleDbDataReader dr; Int16 a ,kod,kat; void Listele() { dtst.Clear(); //tablo temizleme bag.Open(); OleDbDataAdapter adtr = new OleDbDataAdapter("SELECT islem.[islem-id], islem.tarih,kod.kod, kategori.kategoriler, islem.aciklama, islem.giris, islem.cikis FROM kod INNER JOIN (kategori INNER JOIN islem ON kategori.[katid] = islem.[kategori-id]) ON kod.[kodid] = islem.[kod-id];", bag); //id lere göre bağlama Accesde sorgu kısmından oluşturdum adtr.Fill(dtst, "islem"); dataGridView1.DataSource = dtst.Tables["islem"]; adtr.Dispose(); bag.Close(); dataGridView1.Columns[0].HeaderText = "Kayıt No"; //tablo görünümü Rows isimleri dataGridView1.Columns[1].HeaderText = "Tarih"; dataGridView1.Columns[2].HeaderText = "Ana Kategori"; dataGridView1.Columns[3].HeaderText = "Alt Kategori"; dataGridView1.Columns[4].HeaderText = "Açıklama"; dataGridView1.Columns[5].HeaderText = "Kasa Girişi"; dataGridView1.Columns[6].HeaderText = "Kasa Çıkışı"; dataGridView1.Columns[0].Width = 40; dataGridView1.Columns[1].Width = 125; dataGridView1.Columns[2].Width = 125; dataGridView1.Columns[3].Width = 125; dataGridView1.Columns[4].Width = 125; dataGridView1.Columns[5].Width = 120; dataGridView1.Columns[6].Width = 120; }
Kodlar tarafımca yazılmış olup denenmiştir. Yukardaki kodları örnek alarak kendi tablonuza uyarlıyabilirsiniz. Yazımıza yıldız vererek değerlendirebilirsiniz.