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

Promenjljiva u SQL komandi?

[es] :: .NET :: Promenjljiva u SQL komandi?

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

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

miki_ja
Bgd

Član broj: 69771
Poruke: 97
*.dialup.sezampro.yu.



Profil

icon Promenjljiva u SQL komandi?20.03.2006. u 18:08 - pre 220 meseci
Da li je nekako moguće napisati promenjljivu u SQL naredbi, recimo ovako:

Code:
OleDbDataAdapter aparatAdapter = new OleDbDataAdapter("SELECT Broj FROM Aparati WHERE Lokal = 'Cacak I'", firstConnection);


Ovde mi je potrebno da je Lokal, odnosno Cacak I bude promenljiva, recimo text izabranog člana ComboBoxa.
Da li je ovo moguće, ili da pišem petlju za svaki string?
 
Odgovor na temu

Fedya
Fedor Hajdu
Solution Architect
Emaratech
Dubai, UAE

Član broj: 28246
Poruke: 790
*.ADSL.neobee.net.

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


+34 Profil

icon Re: Promenjljiva u SQL komandi?20.03.2006. u 18:49 - pre 220 meseci
Jeste.

Stavi
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "SELECT Broj FROM Aparati WHERE Lokal = '@local'"
cmd.Paramters.Add("@local", OvdeRacunasLocal)

i onda adapter povezes sa komandom i sve ostalo isto...

Every hamster has his day.
 
Odgovor na temu

ntadic
bg

Član broj: 38173
Poruke: 75
194.106.174.*

ICQ: 317199697


Profil

icon Re: Promenjljiva u SQL komandi?21.03.2006. u 10:31 - pre 220 meseci

Code:
OleDbDataAdapter aparatAdapter = new OleDbDataAdapter("SELECT Broj FROM Aparati WHERE Lokal = '" + promjenjiva + "'", firstConnection);

I tako...
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+711 Profil

icon Re: Promenjljiva u SQL komandi?21.03.2006. u 10:38 - pre 220 meseci
Uvek ovako kao što kaže Feđa, nikad ovako kao što kaže ntadic.

http://www.csharp-station.com/Tutorials/AdoDotNet/Lesson06.aspx
http://www.knowdotnet.com/articles/dynamicsqlparameters.html

I na još milion mesta na netu stoji zašto je loše da se SQL upiti konkateniraju sa promenljivama (keyword: "SQL Injection").
 
Odgovor na temu

miki_ja
Bgd

Član broj: 69771
Poruke: 97
217.24.27.*



Profil

icon Re: Promenjljiva u SQL komandi?21.03.2006. u 17:42 - pre 220 meseci
Nažalost, uspevam samo na ovaj drugi način!

@Fedya : Mislim da pogrešno povezujem komandu sa adapterom,
evo primera mog koda:

Code:

string sub = "Subotica";
OleDbCommand cmd = new OleDbCommand();
cmd.CommandText = "SELECT InventarskiBroj FROM Aparati WHERE Lokal = @local";
cmd.Parameters.Add("@local", sub);

OleDbDataAdapter aparatAdapter = new OleDbDataAdapter(cmd.CommandText, firstConnection); /// nije ovako :) ?
DataSet thisDataSet = new DataSet();
aparatAdapter.Fill(thisDataSet, "Aparati");
 
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+711 Profil

icon Re: Promenjljiva u SQL komandi?22.03.2006. u 08:18 - pre 220 meseci
Citat:
miki_ja:
Code:

OleDbDataAdapter aparatAdapter = new OleDbDataAdapter(cmd.CommandText, firstConnection); /// nije ovako :) ?

Da, nije tako. Na taj način praktično džabe si kreirao Command objekat jer posle koristiš samo SQL upit iz njega (parametre si bacio).

Koristi drugi konstruktor:

Code:
OleDbDataAdapter aparatAdapter = new OleDbDataAdapter(cmd);

Naravno, pre toga moraš da komandi postaviš Connection...

[Ovu poruku je menjao jablan dana 22.03.2006. u 09:19 GMT+1]
 
Odgovor na temu

[es] :: .NET :: Promenjljiva u SQL komandi?

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

Postavi temu Odgovori

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