Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Provera da li je record zaključan u VB.NET

[es] :: .NET :: .NET Desktop razvoj :: Provera da li je record zaključan u VB.NET

[ Pregleda: 2636 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Astek
Marković Darko
Beograd

Član broj: 128308
Poruke: 160
*.3dnet.co.yu.



+1 Profil

icon Provera da li je record zaključan u VB.NET17.11.2007. u 08:53 - pre 199 meseci
Ovako,

pristupam nekom zapisu iz koda. Npr:
Code:

Dim ds as new Dataset
Dim da as new sqlClient.SqlDataAdapter
Dim cmd As New...
...
...
Dim strSql As string
strSql="SELECT ....  WHERE ID=1" - IZDVAJA SAMO 1 ZAPIS
cmd.Connection=conn
.......
da.Fil(ds, "TABELA")

.......


Kako drugim korisnicima staviti do znanja da se izdvojeni record trenutno obrađuje (bez uvođenja dodatnih polja u tbl u bazi)?



[Shadowed: dodati [code] tagovi.]

[Ovu poruku je menjao Shadowed dana 17.11.2007. u 11:53 GMT+1]
 
Odgovor na temu

Astek
Marković Darko
Beograd

Član broj: 128308
Poruke: 160
*.3dnet.co.yu.



+1 Profil

icon Re: Provera da li je record zaključan u VB.NET17.11.2007. u 09:02 - pre 199 meseci
Da malo skratim...

U stvari želim da iz koda zaključam tačno jedan record, obavim posao i posle ga otključam?
Takođe želim da iz koda proverim da li je neki rekord zaključan.

 
Odgovor na temu

bjevta
Bratislav Jevtic
http://www.tojesoft.co.rs
Beograd

Član broj: 5216
Poruke: 367
*.dynamic.sbb.co.yu.

Sajt: www.tojesoft.co.rs


+5 Profil

icon Re: Provera da li je record zaključan u VB.NET18.11.2007. u 07:09 - pre 199 meseci
može biti da neću biti od neke pomoći ali, moj odgovor je - nikako. Barem ja ne znam kako.

naime, u ado.net se koristi (barem ja koristim) tzv. "optimistic locking" što se svodi na to da svako u data set-u menja šta mu je volja, a kod update-a se detektuje nešto tipa da li je "dataset.original row = database.current row". ako jeste, update se izvrši i to je to. ako nije, okida se odgovarajući exception, koji ukazuje da je neko menjao taj record u međuvremenu, pa aplikacija mora da razreši konflikt. Problematika se komplikuje ako treba da se izvrši update u više tabela data set-a u istoj transakciji.

S druge strane, uvek sam imao neki način da izbegnem konkurentni update nad istom vrstom: jedan korisnik je zadužen za jednu tabelu, ostali je samo čitaju. Ako i rade istovremeno nad istom tabelom, onda rade samo insert. Ili, ako i rade update, nema šanse da update-uju isti slog u istom trenutku. To sam definisao u fazi logičkog dizajna baze.

Jedino što bih mogao da predložim jeste da proveriš koliko je zaista verovatno da će 2+ korisnika istovremeno "napasti" isti record. Pre toga proveri koliko je zaista potrebno da više ljudi petlja nad istim podacima - proveri business use case.
Acta, non verba!
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: Provera da li je record zaključan u VB.NET

[ Pregleda: 2636 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.