Şimdi Ara

C# Dilinde veri tabanında aynı kayıdı engelleme

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
5
Cevap
0
Favori
197
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhabalar, bir konuda takıldım.

    C# dilinde veri tabanında tekrar eden kaydı engellemek istiyorum. Fakat şöyle textboxa girilen tarihte, aynı kullanıcı adı kaydedilemez. Yani hem tarihi hem kullanıcı adını kontrol etmesi gerekiyor.

    seçilen tarihte, kullanıcı adı kayıtlıysa, kayıt gerçekleşmeyecek. Değilse kayıt gerçekleşecek bir türlü çözemedim yardım edebilir misiniz




  • girilen bilgiler ile

    öncde db den sorgulayıp kontrol et


    veritabanında kayıt varsa hata üret yoksa kayıt ekle


    en basit mantık budur.


    farklı çözümler de var


    SQL de bunu engelleyebilirsin.

  • select id from xxx where userName=userName and selectedDate=selectedDate; sorgusunu mütakip if null geliyorsa kayıt işlemi gerçekleştirilebilir.

  • Kullanıcı girişi olan ve değişken kullandığın tüm sorgularda ya Stored procedure kullanmalısın ya da entity framework kullanmalısın.


    şahsen entity framework kendi yazıdığım Sp lerden daha yavaş kaldığı için ben tek tek tüm işlemler için sp yazarım. her yazdığım sp yi de dökümante ederim. yüzlerce sp olunca takibi zor olabilir.

    ilak başta çok zaman alır ama ileri süreçte kod temizliği, güvenlik, hız ve döküman işlemlerinin en başta yapılmasından ötürü işime geliyor veya alıştığım için böyle yapıyorum.


    Aşağıdaki gibi bir sp işinizi görür.


    declare @sonuc boolean;

    set @sonuc = 0

    if exists (burada db de selectle aynı kaydın kontrolünü yaparsınız)

    begin

    set @sonuc = 1

    end


    select @sonuc as sonuc



    sonra c# ile sonuc değerini okursunuz true ise aynı kayıttan var false ise yok demektir.


    Bu işlemide web servi üzerinden yaparsınız, senkron bir şekilde jquery ile servisten gelen bilgiye göre ekranda hata mesajı gösterirsiniz, ayrıca işlem devam ederken jquery ile dönen kum saati gib ianimasyonlar kullanırsınız. jquery bu işler için çok pratik kod desteği veriyor, aynı işlemi c# ta yapaktansa javascript kullanmayı tercih ediyorum. Kişiye göre değişir, zevkler ve renkler tartışılmaz derler benim yaş grubumdakiler :D





  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.