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

Undo operacija nad mysql bazom iz vb.net-a

[es] :: .NET :: .NET Desktop razvoj :: Undo operacija nad mysql bazom iz vb.net-a

[ Pregleda: 2388 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mish_ns
Miloš Krstin

Član broj: 159930
Poruke: 1105
*.dynamic.isp.telekom.rs.



+18 Profil

icon Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 06:40 - pre 145 meseci
Pozdrav svima...
Koristim VB.NET i mySQL u izradi jedne aplikacije.
Interesuje me kako uraditi UNDO operaciju nad mysql bazom iz .NET-a.
Da li treba izbrisan podatak pamtiti u nekoj backup tabeli ili...

Takođe me interesuje nešto u vezi replikacije baze...
Kako se podešava, koji su bitni parametri i slično...

Hvala
Miloš
 
Odgovor na temu

aca andrijevic
aka LoGaN
Nis

Član broj: 35450
Poruke: 347
*.tico.rs.

ICQ: 325309560


+2 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 08:04 - pre 145 meseci
Citat:
mish_ns: Pozdrav svima...
Koristim VB.NET i mySQL u izradi jedne aplikacije.
Interesuje me kako uraditi UNDO operaciju nad mysql bazom iz .NET-a.
Da li treba izbrisan podatak pamtiti u nekoj backup tabeli ili...



START TRANSACTION, COMMIT, and ROLLBACK Syntax

"Ne menjaj nesto sto te sasvim dobro sluzi, ne trazi leba preko pogace" - Aleksandar Andrijevic
 
Odgovor na temu

mish_ns
Miloš Krstin

Član broj: 159930
Poruke: 1105
*.dynamic.isp.telekom.rs.



+18 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 08:09 - pre 145 meseci
Hvala Aco...

Ovo mi je jasno, ali kako da kada korisnik slučajno obriše neke podatke iz tabele, omogućim putem Button-a Undo, da ih vrati u odgovarajuću tabelu?
 
Odgovor na temu

Dejan Carić
Oslo, Norway

Član broj: 230976
Poruke: 232
82.117.199.*

Sajt: www.dcaric.com


+26 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 09:10 - pre 145 meseci
Jednom kada uradiš uradiš commit ne možeš da radiš nikakav undo. Jedino da uradiš restore baze.
Jedno od rešenja ti je da u tabeli setuješ neki flag umesto da fizički izbrišeš red u bazi:

Code:

PERSON
======
ID
FIRST_NAME
LAST_NAME
...
IS_DELETED

I onda kod brisanja umesto delete izvrši update naredbu.
 
Odgovor na temu

mish_ns
Miloš Krstin

Član broj: 159930
Poruke: 1105
*.dynamic.isp.telekom.rs.



+18 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 09:55 - pre 145 meseci
Da to je moguće rešenje...
Hvala na odgovoru...
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 10:37 - pre 145 meseci
Drugo resenje je da imas history tabelu i trigger (ne znam da li mysql ima iste) koji ce puniti history tabelu na svaku promenu. Posle mozes da vratis bilo koje stanje. Ovo naravno ima svoj problem sto se tice prostora koji ce zauzimati takva baza kao i to da bi nastala zbrka sa relacijama ako ih imas a verovatno imas.
Treca opcija je da napravis apstrakciju i ne radis undo na nivou baze nego na nivou aplikacije pa da u aplikaciji cuvas stara stanja i napravis logiku kako da ih vracas.
Sve u svemu, nimalo jednostavna stvar.
 
Odgovor na temu

mish_ns
Miloš Krstin

Član broj: 159930
Poruke: 1105
*.dynamic.isp.telekom.rs.



+18 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 10:45 - pre 145 meseci
Hvala i tebi Shadowed...
Sada mi pade na pamet da bih mogao imati pomoćnu tabelu koja bi pamtila poslednje tri izbrisane stavke...
Pošto sa trigerima nisam puno radio, pa ne znam da li bi mogao triger - before insert, recimo da prepozna ako ima više od tri stavke u tabeli da ih izbriše?
Kako to može da se uradi?
 
Odgovor na temu

ravni

Član broj: 8894
Poruke: 373



+15 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 11:38 - pre 145 meseci
Nema potrebe da komplikujes sa 3 ili nekim drugim brojem stavki. Za svaku tabelu imas history tabelu, i kada brises ili menjas red, selis ga trigerom u history tabelu.

A onda ako se bas pojavi problem da su u history tabelama milioni redova, mozes napraviti job koji ce jednom nedeljno (ili kad vec) cistiti redove starije od X dana.
 
Odgovor na temu

mish_ns
Miloš Krstin

Član broj: 159930
Poruke: 1105
*.dynamic.isp.telekom.rs.



+18 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 11:41 - pre 145 meseci
Ok...Jel imate možda primer za jedan takav triger?
 
Odgovor na temu

dragancesu
subotica

Član broj: 38340
Poruke: 2189
*.adsl.eunet.rs.



+73 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a19.04.2012. u 17:31 - pre 145 meseci
Citat:
Da li treba izbrisan podatak pamtiti u nekoj backup tabeli ili...

Ovo mi je jasno, ali kako da kada korisnik slučajno obriše neke podatke iz tabele, omogućim putem Button-a Undo, da ih vrati u odgovarajuću tabelu?


Zavisi koliko ti je vazno, bar sto se tice onog prvog.

Ovo drugo ima osnova u praksi, da se zna sta je menjano ili obrisao. Pre brisanja prvo sacuvas, ili pre menjanja sacuvas prethodne vrednosti. Ali vracanje nikako ne na dugme jer to nema smisla, nego na zahtev. S druge strane vazne podatke zastiti od brisanja i menjanja.

Ako slucajno obrise, slucajno ce ponovo da ih unese. Podaci ne nestaju slucajno, kompjuter ne gresi nego covek.


Pomozite Micro$oftu u borbi protiv piraterije, poklonite prijatelju Linux
 
Odgovor na temu

ravni

Član broj: 8894
Poruke: 373



+15 Profil

icon Re: Undo operacija nad mysql bazom iz vb.net-a20.04.2012. u 08:17 - pre 145 meseci
Citat:
mish_ns: Ok...Jel imate možda primer za jedan takav triger?
Evo jedne implementacije pa vidi da li nesto mozes da iskoristis.
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: Undo operacija nad mysql bazom iz vb.net-a

[ Pregleda: 2388 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

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