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

Kako proveriti da li ima podataka u SQL bazi

[es] :: .NET :: Kako proveriti da li ima podataka u SQL bazi

[ Pregleda: 2103 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

La_Mar
Marko Lazovic

Član broj: 140826
Poruke: 123
*.dynamic.sbb.rs.



Profil

icon Kako proveriti da li ima podataka u SQL bazi25.04.2009. u 21:26 - pre 182 meseci
Pravim za faks aplikaciju za rad biblioteke ali sam skucao pred sam kraj. Naime, aplikaciju radim u C#-u a sa podacim radim u MS SQL-u konektovanom okruzenju.
Da uprostim, u bazi imam tabelu clanovi gde izmedju ostalih imam i kolone "ZaduzujeKnjiguID" koja cuva ID knjige koju je korisnik zaduzio ukoliko je uopste i zaduzio.
Znaci tu podatak moze biti neki ID ili NULL. E sad, osmislio sam tako da kad hocu da zaduzim knjigu nekom clanu treba prvo da se proveri da li neki drugi clan vec zaduzuje tu knjigu, u tu svrhu mi treba linija koda koja bi proverila da li u bazi neko vec duguje tu knjigu. To sam do sada uspeo samo tako sto u try bloku pokusam da dovucem podatke o clanu koji duguje tu knjigu i ukoliko Exception izbaci znaci da ne postoji clan koji duguje i onda u okviru tog catch bloka treba zaduziti knjigu novom clanu jer je slobodna.
Neznam da li sam lepo objasnio ali mi pomoc bas treba pa ako je neko slobodan da pomogne moze ili ovde ili kontakt na mejl [email protected].

Unapred hvala svima.
 
Odgovor na temu

Igor Gajic

Član broj: 93194
Poruke: 747
77.46.204.*



+987 Profil

icon Re: Kako proveriti da li ima podataka u SQL bazi25.04.2009. u 21:40 - pre 182 meseci
Pa to je najobicniji SQL izraz...

Code:

SELECT COUNT(*) FROM clanovi WHERE ZaduzujeKnjiguID=@ID;


Ako je ==0 niko ne zaduzuje knjigu, >=1 neko je zaduzio, mada slucaj >1 nebi smeo da se desi.
 
Odgovor na temu

La_Mar
Marko Lazovic

Član broj: 140826
Poruke: 123
*.dynamic.sbb.rs.



Profil

icon Re: Kako proveriti da li ima podataka u SQL bazi25.04.2009. u 21:53 - pre 182 meseci
Hahaha, hvala ti puno. Smejem se sebi vec duze vreme, kako se nisam setio. Count vraca broj redova, :-)
Hvala puno.
 
Odgovor na temu

adopilot
Admir Hodžić
It menager
Sarajevo BiH

Član broj: 123492
Poruke: 134
217.199.135.*

Sajt: nemam ja to


Profil

icon Re: Kako proveriti da li ima podataka u SQL bazi25.04.2009. u 22:17 - pre 182 meseci
U Tsqlu možeš da koristiš funkciju if exist i takođe if not exist

pa možete naprimjer reći

Code:


if not exist (SELECT COUNT(*) FROM clanovi WHERE ZaduzujeKnjiguID=@ID;)
begin
RAISERROR ();
end
else
select * from clanovi WHERE ZaduzujeKnjiguID=@ID



na ovaj način možete samo jednom da pozivate proceduru iz baze i ako nema podatak da podignete vašu poruku o grešci koju će te proslijediti do korisnika.


S poštovanjem
 
Odgovor na temu

mr.zhile
Ivan ZHILE
C# developer

Član broj: 185721
Poruke: 249
93.86.137.*



+2 Profil

icon Re: Kako proveriti da li ima podataka u SQL bazi25.04.2009. u 22:25 - pre 182 meseci
@adopilot
Pitanje ne vezano za ovu temu,ali sam video zanimljiv delic koda pa da pitam dal sam dobro skapirao...
RAISERROR() - pravi izuzetak?u zagradam se prikaze poruka ?a jel nece da pukne program zbog tog izuzetka?svaki izuzetak kad se napravi mora da se uhvati (handluje)?
Unapred puno hvala
Don't worry be happy
 
Odgovor na temu

adopilot
Admir Hodžić
It menager
Sarajevo BiH

Član broj: 123492
Poruke: 134
217.199.135.*

Sajt: nemam ja to


Profil

icon Re: Kako proveriti da li ima podataka u SQL bazi26.04.2009. u 19:09 - pre 182 meseci
Iskren da budem i ja sam u C# i .NET programiranju strogi početnik.
Moje se iskustvo bazira kao administrator SQL-a i jedne Delphi-jeve aplikcije u preduzeću gdije radim.
Sada sam poče da učim i programiranje pa se svaki put kada sam u stanju dati odgovor obradujem, kako bi se odužio za sve odgovre koje ja dobijem i pročitam.

Riseerror koji sam spomenuo je TSQL komanda i ona se odnosi sa rad sa SQLom i u SQLovim Books Online ce te sresti da je taj Risse error nauka sama za sebe.
Od levela koji se popisuju za pojedini tip greške do mogućnosti određivanja jezika i različite poruke vezano za korisnika a i istu vrstu greške.

Momci koji su radili aplikaciju za nas su to jako dobro obavili i za greške koje napravi SQL fino se pojavi prozor koji vrati grešku do korisnika bez da
apikacija ima problema u rdau.
Čak su i pojedine greške obrađivali na način da korisnik dobije poruku Podatak se ne može izbrisati jer je u upotrebi kada se ruši refercijalni inegridat.
Dok su za druge greške jednostavno vraćali tekst poruke onakav kakav je SQL javljao pa smo ond vidjeli šta se događa .
Nažalost to je zakodirano u Delphiju pa nemogu da vam dam više informacije kako su to odradili.
Dao sam sebi za zadatk da to naučim i primjenim u svojoj aplikaciji koju radim pa čim budem imao neki konkretan uzorak hendlanja sqlove greške u C# kodu objavim je ovdije



Edit: "link koji sam maločas ostavio mislim da neće biti od pomoći"
S poštovanjem
 
Odgovor na temu

[es] :: .NET :: Kako proveriti da li ima podataka u SQL bazi

[ Pregleda: 2103 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

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