Aynı Kayıttan Varsa Üzerine Ekleme

Emircan16

Hectopat
Katılım
28 Ocak 2014
Mesajlar
113
Yer
Bursa
Daha fazla  
Cinsiyet
Erkek
Selamün aleyküm,

Arkadaşlar bir kütüphane programı yapıyorum ve SQL veritabanı kullanıyorum. Ancak aşamadığım bir problem var. Mesela "a" kitabını ilk defa kaydederken 4 adet olarak kaydetmiştim. Ancak kütüphane daha sonra bir bağış aldı ve aldığı bağış "a" kitabı. SQL veritabanımda bu kitap daha önceden kayıtlıysa ben bu kitabı tekrar kayıt edersem kitap adetini +1 artırmasını nasıl sağlayabilirim? Cevaplarınız için şimdiden teşekkürler...
 
Merhaba sanırım birkaç gün önce bir probleminizi daha çözmüştüm o tablodan yola çıkarak anlatayım.

Kod:
public void varsaekle()
{
   SqlConnection baglanti = new SqlConnection("buraya connectionstring yazılacak");
   SqlCommand komut = new SqlCommand();
   SqlDataAdapter adaptor = new SqlDataAdapter("SELECT kAdet FROM kitap WHERE kAdi='" + "kitapadı" + "' AND kYazar='" + "yazaradi" + "' AND kBarkod='" + "barkod" + "'",baglanti);
   DataSet ds = new DataSet();
   komut.CommandText = "SELECT COUNT (*) FROM kitap WHERE kAdi='" + "kitapadı" + "' AND kYazar='" + "yazaradi" + "'            AND kBarkod='" + "barkod" + "'"
   komut.Connection = baglanti;
   baglanti.Open();
   object a = komut.ExecuteScalar();
   int varmi = Convert.ToInt32(a);
   baglanti.Close();
   if(varmi ==  1)
    {
         adaptor.Fill(ds,"Kitap Adedi");
         DataTable dt = ds.Tables[0];
         string adet = "";
         foreach (DataRow dr in dt.Rows)
                    {
                       adet = dr[0].ToString();
                       
                    }
         int suankiadet = Convert.ToInt32(adet) + 1;
         komut.CommandText = "UPDATE kitap SET kAdet ='" suankiadet.ToString() "' WHERE  kAdi='" + "kitapadı" + "' AND                 kYazar='" + "yazaradi" + "'            AND kBarkod='" + "barkod" + "'"
        komut.Connection = baglanti;
        baglanti.Open();
        komut.ExecuteNonQuery();
        baglanti.Close();
    }
  else
   {
      
         komut.CommandText = "INSERT into kitap(kAdi,kYazar,kBarkod,kAdet) VALUES('" + "kitapadi" + "','" + "kitapyazari" + "','" + "barkod" + "','" + "adet" "'";
        komut.Connection = baglanti;
        baglanti.Open();
        komut.ExecuteNonQuery();
        baglanti.Close();

    }
}

Tablodaki bölümleri kendine göre doldur.
 
kayıt işlemi başladığında if else yapısıyla cözersin, if kitap adı kitaplar listesinde var mı ? varsa kitap sayısı kolonuna +1 ekle , else yeni kitap ekle
 
Uyarı! Bu konu 10 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Geri
Yukarı