Önceki yazılarımda Microsoft Excel 12.0 Object Kütüphanesi ekleme, silme işlemlerini yapmıştıştık. Excel Object kullanmadan OLEDB ile kayıt ekleme, silme ,güncelleme ve sorgulama işlemlerini SQL yöntemleri ile yapmak mümkün. Bu yazımızda C# ile Excelde Kayıt Eklem işlemi OLEDB kullanarak nasıl gerçekleştireceğimizi inceleyeceğiz.
Kodlarımızı yazmadan önce Yukarıdakine benzer bir excel kitabı hazırlamış olmanız gerekmektedir. Excel kitabının hazırladıktan sonra SQLdeki kayıt ekleme sorgusunun nasıl olduğunu bir inceleyelim.
Aşağıdaki Sql sorgusu Excel kitabındaki Sayfa1 içinedeki isim, soyisim,ortalama ve durum alanlarına sırasyıla values içindeki kayıtları eklemektedir.
1 2 3 |
sql = "Insert into [Sayfa1$] (isim,soyisim,ortalama,Durum) values('Recep','Aktaş',45,'KALDI')"; |
Aşağıdaki kodları WPF yada Windows Form projesinde butonun tıklama olayına bağladığımızda D sürücüsünde oluşturulmuş olan yukarıdaki gibi bir excel dosyasına kayıt eklemek için yazılmış olan kodları görmektesiniz.
OLEDB balantısı yapıp bu bağlantıya kayıt ekleme(insert into) sorgusunu yapıp çalıştırdık.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
try { System.Data.OleDb.OleDbConnection Baglanti; System.Data.OleDb.OleDbCommand myCommand = new System.Data.OleDb.OleDbCommand(); string sql = null; Baglanti = new System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='D:\\bel3.xls';Extended Properties=Excel 8.0;"); Baglanti.Open(); myCommand.Connection = Baglanti; sql = "Insert into [Sayfa1$] (isim,soyisim,ortalama,Durum) values('Recep','Aktaş',45,'KALDI')"; myCommand.CommandText = sql; myCommand.ExecuteNonQuery(); Baglanti.Close(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } |
Yukarıdaki programının ekran çıktısı aşağıdaki gibidir.