none
Access Veritabanından Son Kayıtı Alma RRS feed

  • Soru

  • Merhabalar, C# Access'te yaptığım projede Access veritabanımdan son kayıtı çekmek istiyorum fakat bir türlü düzgün çalışan bir yapı oluşturamadım.

    Resimdeki veritabanına eklenmiş olan son kayıtın "numara" sütunundaki veriyi "Tutanak_no" textbox'a çekmek istiyorum.(Örneğin, buradaki son kayıt olan 151 numarasını almam gerek)

    Aşağıdaki kodları denedim ama sonuca ulaşamadım,

      con.Open();
                OleDbCommand cmd = new OleDbCommand("SELECT top 1 * FROM veri order by numara desc", con);
                cmd.ExecuteNonQuery();
                tutanak_no_textbox.Text = cmd.ToString();

    Bu şekilde kod yazdığımda Tutanak_no textbox'a gelen hata bu şekilde oluyor ;

    Bu şekilde yazdığımda da textbox'a kayıt geliyor fakat sürekli hep 150 numaralı kayıtı alıyor son kayıtı alamıyor. Sanırım "Select * from" ifadesinden kaynaklı bir sorun. 

    con.Open();  
    OleDbCommand not_cmd = new OleDbCommand("Select * from Veri", con);
                OleDbDataReader dr = not_cmd.ExecuteReader();
                while (dr.Read())
                {
                    Tutanak_no.Text = dr["numara"].ToString();
                }
                con.Close();
    yardımlarınızı bekliyorum İYİ ÇALIŞMALAR 

    11 Nisan 2019 Perşembe 08:06

Yanıtlar

Tüm Yanıtlar

  • Tek bir veri alacaksanız eğer executescalar kullanmanız gerekir . 

    OleDbCommand cmd = new OleDbCommand("SELECT top (1) numara FROM veri order by numara desc", con);
    tutanak_no_textbox.Text = cmd.ExecuteScalar().ToString();
        

    Öneri olarak access kullanmamanızı yerine sqlite kullanmanızı tavsiye ederim . 


    Altan Özdemir

    11 Nisan 2019 Perşembe 08:13
  • Hocam merhabalar, verdiğiniz kod şu şekilde hata vermektedir. Sanırım SQL cümlesinde bir hata var fakat ben bulamadım.

    Birde sql Lite hiç kullanmadım nasıl kullanılır bilmiyorum ama benim için önemli olan bu projeyi setup yapacak olmam. Eğer başka bir bir bilgisayara yükleme yaparken sql veritabanım tıpkı Access gibi setup içine koyulabiliyor (taşına biliniyor) ise bundan sonra onunla çalışırım hocam ?

    11 Nisan 2019 Perşembe 13:53
  • top 1 olarak deneyin parantezler sorun çıkarmış olabilir. 

    Evet sqlite gömülü bir veritabanıdır . 


    Altan Özdemir

    11 Nisan 2019 Perşembe 14:02
  • Sqlite access gibi setup icine konulmuyor, çünkü kurulum gerektirmiyor. sqlite temelde bir dll, ilk create table komutunda database dosyası yaratilir. access'te durum oyle degil, isler daha zor (zaten access databaseden sayılmaz). 
    11 Nisan 2019 Perşembe 16:47
    Yanıtlayıcı