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

kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije

[es] :: MS SQL :: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije

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

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mayana
Zrenjanin

Član broj: 176040
Poruke: 82
77.46.198.*



Profil

icon kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije16.07.2009. u 10:42 - pre 179 meseci
ovako, imam tabelu odbor i u njoj polja skraceninazivodbora (pk), punnazivodbora, jmbgpredsednikaodbora i jmbgzamenikapredsednika. clanovi su u posebnoj tabeli clanoviodbora i oni mi sada nisu vazni. u pretrazi ocu da kad korisnik ukuca jmbg, select protrci kroz odbore i ispise kao rezultat: skraceninazivodbora, punnazivodbora i svojstvo, s tim da ce svojstvo da primi vrednost "predsednik" ili "zamenik" zavisno da li je unesen jmbg jednak jmbgu predsednika ili zamenika. znaci, ja polje (kolonu) svojstvo nemam u tabeli, zelim da se ona kreira samo pri pretrazi. da li ovo da resim preko view-a i kako? kako da dodam tu promenljivu svojstvo? nesto sa declare mi lici ali nisam sigurna? hvala unapred

[Ovu poruku je menjao mayana dana 16.07.2009. u 11:54 GMT+1]
... ovde ima nesto sto se nikako ne slaze... ;)
 
Odgovor na temu

Fedya
Fedor Hajdu
Solution Architect
Emaratech
Dubai, UAE

Član broj: 28246
Poruke: 790
82.117.202.*

Jabber: fedya@elitesecurity.org
Sajt: devtechgroup.com


+34 Profil

icon Re: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije16.07.2009. u 11:13 - pre 179 meseci
Citat:
mayana: clanovi su u posebnoj tabeli clanoviodbora i oni mi sada nisu vazni.


I tek kako jesu vazni, post se moras povezati sa tom tableom da bi dobila vrednosti.

upit bi bio nesto kao (lupam kod mozda treba malo izmeniti ali je blizu)

SELECT odbor.*, clanoviodbora.svojstvo FROM odbor
LEFT OUTTER JOIN clanoviodbora ON odbor.jmbg = clanoviodbora.jmbg
WHERE odbor.jmbg = @unesenJmbg


EDIT: Posle tvoje izmene izgleda da nisam najbolje razumeo problem. Daj nekoliko redova iz obe tabele da vidimo kako to izgleda.
Every hamster has his day.
 
Odgovor na temu

mayana
Zrenjanin

Član broj: 176040
Poruke: 82
93.87.188.*



Profil

icon Re: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije16.07.2009. u 11:29 - pre 179 meseci
stavila sam ovo za upit (koristim c#.net)
Code:

string upit=@"SELECT skraceninazivodbora, punnazivodbora, jmbgpredsednikaodbora, jmbgzamenikaodbora from odbori WHERE JMBGPREDSEDNIKAODBORA=" + Convert.ToInt32(this.txtVrednost.Text)+" OR JMBGZAMENIKAPREDSEDNIKA=" + Convert.ToInt32(this.txtVrednost.Text);


i to mi sada daje kao rezultat podatke koje zelim ali mi ne pise recima "zamenik" ili "predsednik" nego mi da podatke, a ja zelim da mi ako nadje jmbg da je jednak sa jmbgpredsednika ispise "predsednik" i za zamenika isto...

clanovi nisu vazni jer se u tabeli odbor nalaze samo ova 4 polja, a u tabeli clanodbora se nalazi skraceninazivodbora i jmbg.
... ovde ima nesto sto se nikako ne slaze... ;)
 
Odgovor na temu

Fedya
Fedor Hajdu
Solution Architect
Emaratech
Dubai, UAE

Član broj: 28246
Poruke: 790
82.117.202.*

Jabber: fedya@elitesecurity.org
Sajt: devtechgroup.com


+34 Profil

icon Re: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije16.07.2009. u 11:51 - pre 179 meseci
Ima li nekog da preporuci knjigu na srpskom sa osnovama SQL i relacionih baza?
Every hamster has his day.
 
Odgovor na temu

mayana
Zrenjanin

Član broj: 176040
Poruke: 82
93.87.188.*



Profil

icon Re: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije16.07.2009. u 11:54 - pre 179 meseci
ti to mene zezas da ne znam ni osnove sql-a? :) ok, ok, ne ljutim se... samo sam pitala da li se moze u selectu dodati neka promenljiva koja dobija vrednost zavisno od where klauzule.
... ovde ima nesto sto se nikako ne slaze... ;)
 
Odgovor na temu

Fedya
Fedor Hajdu
Solution Architect
Emaratech
Dubai, UAE

Član broj: 28246
Poruke: 790
82.117.202.*

Jabber: fedya@elitesecurity.org
Sajt: devtechgroup.com


+34 Profil

icon Re: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije16.07.2009. u 14:23 - pre 179 meseci
Nije mi namera nikoga da zezam, samo mislim da ti je:
1. problem pogresno postavljen
2. ti ga nisi dobro razumela ili
3. baza ti je uzasno lose projektovana.

Logicno kako bi tabele trebalo da izgledaju je da imas jednu tabelu gde se nalaze jmbg, ime, prezime i svi ostali podaci o zaposlenima, drugu tabelu gde se nalaze jmbg i neki ID koji bi definisao funkciju u odboru i trecu tabelu koja bi sadrzala Id funkcije, opis i mozda jos neke podatke o tome. (proguglaj sa 'treca normalna forma' ili 'noramalizacija baza' uposte)

Tada bi tvoj upit bio elementaran join dve ili tri table gde bi ti jedina promenljiva bila ID koji je upisan na formi.

Drugi problem je da NIKAD ne smes spajati uneseni tekst od korisnika sa SQL upitom.
Na primer da nema (svakako suvisnog) Convert.ToInt32 u tvom slucaju neki zlonamerni korisnik bi mogao doci i uneti nesto kao "1; DELETE FROM odbori" i obrisati ti celu tabelu. (google: SQL Injection)

Za ovakve stvari se uvek koriste storovane procedure.
Every hamster has his day.
 
Odgovor na temu

Zidar
Canada

Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije16.07.2009. u 22:12 - pre 179 meseci
Sve sto ti je Fedya rekoa tacno je, bez ljutnje. problem je sto imas dve kolone sa istom vrstom podataka u jednoj tabeli. Tvoj uslov sad pokusava da nadje nesto sto se nalazi u jednoj, a mzoda i u drugoj koloni.

Ako nemas priliku da menjas strukturu baze, ovo ce verovatno pomoci:
Code:

SELECT 
skraceninazivodbora, punnazivodbora, jmbgpredsednikaodbora, jmbgzamenikaodbora ,
Opis = CASE 
            WHEN JMBGPREDSEDNIKAODBORA= @Vrednost THEN 'Predsednik'
            WHEN JMBGZAMENIKAPREDSEDNIKA= @Vrednost THEN 'Potpredsednik'
            ELSE 'POgresan JMBG'
        END
FROM odbori 
WHERE JMBGPREDSEDNIKAODBORA= @Vrednost 
OR JMBGZAMENIKAPREDSEDNIKA= @Vrednost


:-)
 
Odgovor na temu

gpedja_70
programer
Novi Sad, Srbija

Član broj: 224317
Poruke: 53
*.wobyhaus.co.rs.



+2 Profil

icon Re: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije17.07.2009. u 08:42 - pre 179 meseci
upravo htedoh reci da ce u tvom slucaju CASE jako lepo odraditi stvar :)


pozz....
 
Odgovor na temu

mayana
Zrenjanin

Član broj: 176040
Poruke: 82
79.101.252.*



Profil

icon Re: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije17.07.2009. u 09:03 - pre 179 meseci
Fedya, hvala na savetima, u pitanju je obican seminarski za nekog drugog, tako da me bas briga, bitno da ga odradim. Zidar, hvala, ovo radi savrseno! pozdrav
... ovde ima nesto sto se nikako ne slaze... ;)
 
Odgovor na temu

[es] :: MS SQL :: kako da na osnovu pretrage upisem promenljivu... procitajte detaljnije

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

Postavi temu Odgovori

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