Şimdi Ara

Seçilen kaydı locklama..

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
7
Cevap
0
Favori
758
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar merhaba..
    Asp.Net ile bi proje geliştiriyoruz. Fakat Şöyle bir sıkıntım var. Şu şekilde anlatayım. Formda müşteri ekliyorum mesela. Daha sonra bu müşterileri gridde listeletiyorum. Daha sonra gride select butonu koydum. Bu butondan seçip düzenleye basıncada modal açıyorum ve kaydı güncelliyorum. Fakat program çok kullanıcılı olucak bu yüzden mesela A kişisi geldi id'si 1 olan müşteriye tıkladı, düzenle dedi ve modal geldi ekranına. Daha sonra B kişisi geldi id'si 1 olan müşteriye tıkladığı zaman hata verdirmek istiyorum. Şu anda kullanımda diye yani müşteri id sine göre. Bunun olması için rowlock yapmam gerekiyormuş. Araştırmalarım bu şekilde. Gridin selectedindexchanged eventında select yapıyorum müşteriyi seçiyorum şu şekilde. SELECT * FROM musteri with (rowlock)..... WHERE mus_id = @id diye gidiyor seçimim. Fakat başka bir kullanıcıda bağlandığında o kaydı açabiliyor yine. Bir türlü çözüm bulamadım. Bu konuda bana yardımcı olursanız çok sevinirim. Belki başka bir yolu vardır bilemiyorum. Şimdiden teşekkür ediyorum.



    < Bu mesaj bu kişi tarafından değiştirildi onur3535 -- 7 Aralık 2012; 0:35:16 >







  • şöyle bir yol deneyebilirsin. kaydın bulundugu tabloya islock (bit) diye kolon ekleyip kayıtı güncelle butonuna bastığında islock = 1 diye güncellersin. bir başkası geldiğinde de bu islock 1 ise editlemesine izin vermezsin. ama şöyle bir sıkıntıda olabilir. biri islock yaptı, sonrasında uygulamayı kapattı. bu durumda kayıt locklı kalır. buna da lockdate diye tarih kolonu koyarsın. belli bir süre belirlersin 5-10 dk. bu süreden fazla ise editleme izni verebilirsin mesela.
  • quote:

    Orijinalden alıntı: oblohan

    şöyle bir yol deneyebilirsin. kaydın bulundugu tabloya islock (bit) diye kolon ekleyip kayıtı güncelle butonuna bastığında islock = 1 diye güncellersin. bir başkası geldiğinde de bu islock 1 ise editlemesine izin vermezsin. ama şöyle bir sıkıntıda olabilir. biri islock yaptı, sonrasında uygulamayı kapattı. bu durumda kayıt locklı kalır. buna da lockdate diye tarih kolonu koyarsın. belli bir süre belirlersin 5-10 dk. bu süreden fazla ise editleme izni verebilirsin mesela.

    saolasın yorumun için.. ama merak ediyorum benim bu işlemi yapmam için illaki bu yöntemi mi uygulamam gerek? sqle ozgu hazir birsey yok mu hic bu islem ile ilgili? benim bulabildiğim sadece lock oldu.




  • quote:

    Orijinalden alıntı: onur3535

    quote:

    Orijinalden alıntı: oblohan

    şöyle bir yol deneyebilirsin. kaydın bulundugu tabloya islock (bit) diye kolon ekleyip kayıtı güncelle butonuna bastığında islock = 1 diye güncellersin. bir başkası geldiğinde de bu islock 1 ise editlemesine izin vermezsin. ama şöyle bir sıkıntıda olabilir. biri islock yaptı, sonrasında uygulamayı kapattı. bu durumda kayıt locklı kalır. buna da lockdate diye tarih kolonu koyarsın. belli bir süre belirlersin 5-10 dk. bu süreden fazla ise editleme izni verebilirsin mesela.

    saolasın yorumun için.. ama merak ediyorum benim bu işlemi yapmam için illaki bu yöntemi mi uygulamam gerek? sqle ozgu hazir birsey yok mu hic bu islem ile ilgili? benim bulabildiğim sadece lock oldu.

    Açıkcası SQL tarafında LOCK var. Onun dışında benim de bildiğim başka yöntem yok. Ama LOCK yaptığında başkası da değiştiremez diye biliyorum. Eğer böyle birşeye ihtiyacın varsa benim söylediğim gibi bir yöntem kullanabilirsin.




  • quote:

    Orijinalden alıntı: oblohan

    şöyle bir yol deneyebilirsin. kaydın bulundugu tabloya islock (bit) diye kolon ekleyip kayıtı güncelle butonuna bastığında islock = 1 diye güncellersin. bir başkası geldiğinde de bu islock 1 ise editlemesine izin vermezsin. ama şöyle bir sıkıntıda olabilir. biri islock yaptı, sonrasında uygulamayı kapattı. bu durumda kayıt locklı kalır. buna da lockdate diye tarih kolonu koyarsın. belli bir süre belirlersin 5-10 dk. bu süreden fazla ise editleme izni verebilirsin mesela.
    ,fb45eghg



    < Bu mesaj bu kişi tarafından değiştirildi rob dö şambır -- 30 Nisan 2013; 17:13:04 >
  • quote:

    Orijinalden alıntı: onur3535

    quote:

    Orijinalden alıntı: oblohan

    şöyle bir yol deneyebilirsin. kaydın bulundugu tabloya islock (bit) diye kolon ekleyip kayıtı güncelle butonuna bastığında islock = 1 diye güncellersin. bir başkası geldiğinde de bu islock 1 ise editlemesine izin vermezsin. ama şöyle bir sıkıntıda olabilir. biri islock yaptı, sonrasında uygulamayı kapattı. bu durumda kayıt locklı kalır. buna da lockdate diye tarih kolonu koyarsın. belli bir süre belirlersin 5-10 dk. bu süreden fazla ise editleme izni verebilirsin mesela.

    saolasın yorumun için.. ama merak ediyorum benim bu işlemi yapmam için illaki bu yöntemi mi uygulamam gerek? sqle ozgu hazir birsey yok mu hic bu islem ile ilgili? benim bulabildiğim sadece lock oldu.

    Alıntıları Göster
    8dkjbyxvy



    < Bu mesaj bu kişi tarafından değiştirildi rob dö şambır -- 30 Nisan 2013; 17:13:24 >




  • quote:

    Orijinalden alıntı: rob dö şambır

    quote:

    Orijinalden alıntı: onur3535

    quote:

    Orijinalden alıntı: oblohan

    şöyle bir yol deneyebilirsin. kaydın bulundugu tabloya islock (bit) diye kolon ekleyip kayıtı güncelle butonuna bastığında islock = 1 diye güncellersin. bir başkası geldiğinde de bu islock 1 ise editlemesine izin vermezsin. ama şöyle bir sıkıntıda olabilir. biri islock yaptı, sonrasında uygulamayı kapattı. bu durumda kayıt locklı kalır. buna da lockdate diye tarih kolonu koyarsın. belli bir süre belirlersin 5-10 dk. bu süreden fazla ise editleme izni verebilirsin mesela.

    saolasın yorumun için.. ama merak ediyorum benim bu işlemi yapmam için illaki bu yöntemi mi uygulamam gerek? sqle ozgu hazir birsey yok mu hic bu islem ile ilgili? benim bulabildiğim sadece lock oldu.

    başla şurdan okumayahttp://technet.microsoft.com/en-us/library/ms187101(v=sql.105).aspx
    orayı anlayamıyorsan multi-user işleri yapmaya kalkışma.

    deneye deneye öğrenicem bunu. anlamıcam diye birşey yok madem ki burası işine yarar diyosun bir şekilde anlıyıcam anlamak zorundayım teşekkür ederim yardımın için. projeyi kesinlikle multi-user yapmam gerek. başladık bi kere geri dönmek olmaz




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