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

Update, Delete u bazu WinForm VB.net 2005 HITNO

[es] :: .NET :: Update, Delete u bazu WinForm VB.net 2005 HITNO

[ Pregleda: 2002 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mplex
Student

Član broj: 180626
Poruke: 9
*.dsl.optinet.hr.



Profil

icon Update, Delete u bazu WinForm VB.net 2005 HITNO25.06.2008. u 22:42 - pre 192 meseci
Evo ovako imam problem sa brisanjem primarnog ključa u relaciji sa nekom tabelom di je strani ključ.

Radim neki program u VB.net 2005 i baza SQL Server 2005. Napravio sam forme za unos itd...
Radi se o tome da NPR. imam tabelu ADRESE I TIP_ADRESE u tabeli tip_adrese upisan je jedan red npr. ID:1 Tip: Privatna
SADA napravim formu za UNOS još tipova Adresa ako korisnik oče . To sve ok radi Update, save,edit.
Međutim ako oču obrisat neki tip_adrese iz tablice pojavi se greška. OK normalno taj ID- tipa adrese je strani ključ u tablici adrese.
AlI automacki mi sve vrati i NIŠTA NE OBRIŠE tj. OSTANU I ONI TIPOVi ADRESA KOJI SE KORISTE i KOJI SE NE KORISTE....ok RejectChanges()- radi integriteta


Kako da zabranim brisanje Tipova adresa koji se več negdje koriste a dozvolim BRISANJE onih koji se još nigdni ne koriste?????????????????????????????????

HVALA svima koji mi pomognu ILI daju LINK na takav sličan problem
 
Odgovor na temu

01011011

Član broj: 561
Poruke: 2341
71.239.153.*



+2 Profil

icon Re: Update, Delete u bazu WinForm VB.net 2005 HITNO26.06.2008. u 06:57 - pre 192 meseci
Prvo obrises strani kljuc, pa onda primarni.

Napisi Stored Procedure, i nju zovi iz koda i posalji joj ID, I onda u stored procedure...

Delete from tip_adrese where id= taj id

delete from adresa where id = tvoj id

TO ti je stored procedura, it o je to...

Naravno, mozes takodje ako neces da brises nista u bazi podataka da napravis polje koje ces nazvati isActive, ili nesto tako i onda ga stavis da bude true ili false. Kada je aktivno nek je 1, a kad ga izbrises samo uradis update tog polja na 0, i poslije samo promjenes malo logiku koja ce ti prikazivati rezultate, i da ne prikazuje one sa isActive = 0. OVO NIJE dobro ukoliko je u pitanju dosta podataka koji se non stop brisu, jer dolazi do pregommilavanja baze.

Poz
 
Odgovor na temu

mplex
Student

Član broj: 180626
Poruke: 9
*.dsl.optinet.hr.



Profil

icon Re: Update, Delete u bazu WinForm VB.net 2005 HITNO26.06.2008. u 09:09 - pre 192 meseci
OK, to mi je jasno da prvo moram obrist primrni pa strani kljuš. Međutim neželim da korisniku dozvolim brisanje TIPA ADRESE ako se taj tip adrese koristi u tabeli adese...
NPR.
Tabela TIP adrese ima:
ID TIP
1 Privatna - ovaj tip se koristi u aresama
2 Osobna - a ovaj još ne
3 Skladište - ni ova se još ne korisi

I sad korisnik pokrene progam ode do Forme sa tipovima adrese i OČE da obriše TIP adrese Privatna i Osobna, pritisne Delete i dogodi se greška(Privatna se koriti) koju sam prije toga uhvatio u Try.... Pošto je došlo do greške RejectChanges() i program vrati nazat tip PRIVATNA i OSOBNA. A treba SAMO da napravi RejectChanges() na PRIVATNA pošto se na NJOJ DOGODILA GREŠKA...

Eto ako neko razumje problem nek pomaga, HVALA
 
Odgovor na temu

01011011

Član broj: 561
Poruke: 2341
65.216.70.*



+2 Profil

icon Re: Update, Delete u bazu WinForm VB.net 2005 HITNO26.06.2008. u 14:57 - pre 192 meseci
Ti si ustvari sam sebi odgovorio na pitanje a da nisi toga svjestan :) Barem ja tako mislim, ajde da protumacimo sta si htio da uradis.

Evo da kopiram tvoj tekst pa da probam da razjasnim.

Citat:

OK, to mi je jasno da prvo moram obrist primrni pa strani kljuš. Međutim neželim da korisniku dozvolim brisanje TIPA ADRESE ako se taj tip adrese koristi u tabeli adese...

NPR.
Tabela TIP adrese ima:
ID TIP
1 Privatna - ovaj tip se koristi u aresama
2 Osobna - a ovaj još ne
3 Skladište - ni ova se još ne korisi

I sad korisnik pokrene progam ode do Forme sa tipovima adrese i OČE da obriše TIP adrese Privatna i Osobna, pritisne Delete i dogodi se greška(Privatna se koriti) koju sam prije toga uhvatio u Try.... Pošto je došlo do greške RejectChanges() i program vrati nazat tip PRIVATNA i OSOBNA. A treba SAMO da napravi RejectChanges() na PRIVATNA pošto se na NJOJ DOGODILA GREŠKA...

Eto ako neko razumje problem nek pomaga, HVALA


Da bi ovo uradio znaci da zelis da radis "error Handling" i da posaljes pravu poruku korisniku sta se dogodilo. Razmisli sta treba da uradis? Kako ti code izgleda sad trenutno? Kako vracas nazad korisniku da ne moze da obrise. Ne znam koji mehanizam koristis... Uglavnom PREPORUCIO bih ti da pogledas Exception Handlind in SQL ili vec koju bazu koristis.

Tamo uhvatis error i posaljes ga nazad, a onda u SQL Stored Procedure mozes da napises jednostavno

If (NESTO)
BEGIN

END
ELSE IF NESTO DRUGO I TAKO DALJE...

Tako da imas detaljno sta se desava, i onda posaljes samo sta nije radilo...

Nadam se da razumijes... ako ne, posalji code da vidimo.

 
Odgovor na temu

mplex
Student

Član broj: 180626
Poruke: 9
*.dsl.optinet.hr.



Profil

icon Re: Update, Delete u bazu WinForm VB.net 2005 HITNO26.06.2008. u 17:27 - pre 192 meseci
Vo da ne kopliciram, trebam samo zabranit brisanje Tipa_adrese ako se negdje koristi


Znači treba korisniku reč EJ nemožeš to obrisat zato što taj tip koristiš u adresama....

A ako oče obrisat neki drugi tip koji se ne koristi SVE OK...

Kako to kontrolirat? Treba mi konkretan primjer...



 
Odgovor na temu

01011011

Član broj: 561
Poruke: 2341
71.239.153.*



+2 Profil

icon Re: Update, Delete u bazu WinForm VB.net 2005 HITNO30.06.2008. u 02:11 - pre 192 meseci
kad odem sutra na posao, probacu da ti ispisem nesto, neki pseudocode il nesto pa radi po tome... Ne znam kakva ti je cijela applikacija, ovo sto trazis nije tesko, treba da samo razmislis kako da uradis.
 
Odgovor na temu

mplex
Student

Član broj: 180626
Poruke: 9
*.dsl.optinet.hr.



Profil

icon Re: Update, Delete u bazu WinForm VB.net 2005 HITNO30.06.2008. u 06:44 - pre 192 meseci
OK, Hvala (samo nek je u VB.net 2005)
 
Odgovor na temu

perolozac123
Aleksandar
Cacak

Član broj: 182138
Poruke: 55
*.eunet.yu.



Profil

icon Re: Update, Delete u bazu WinForm VB.net 2005 HITNO30.06.2008. u 08:28 - pre 192 meseci
jos sam nov u ovome ali koliko sam ja shvatio probaj sa on error resume next i ono sto se koristi jednostavno ce preskociti
 
Odgovor na temu

mplex
Student

Član broj: 180626
Poruke: 9
*.dsl.optinet.hr.



Profil

icon Re: Update, Delete u bazu WinForm VB.net 2005 HITNO02.07.2008. u 21:40 - pre 192 meseci
Evo problem je riješen, hvala svima na sugestijama....

Običan SQl upit sa prebrojavanjem ID-a...
 
Odgovor na temu

[es] :: .NET :: Update, Delete u bazu WinForm VB.net 2005 HITNO

[ Pregleda: 2002 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

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