Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 8 odgovora
  • 5.214 pregleda

Najnovija ↓

Problem sa SELECT u ADO bazi???? 23.10.2007. u 19:10 · pre 231 mesec
izmenjeno 1 put, poslednji put Aleksandar Ružičić 23.10.2007. u 22:07
  1. Aleksandar Ružičić23.10.2007. u 22:07zapis iz teksta poruke
#1
U tablici TABLE imam slijedeca polja BROJ,DODATAK,GLAVNO
22 120 1
76 80 1
21 121 2

Sada bih trebao izabrati BROJ gdje je DODATAK najveci ali samo iz GLAVNO
zadano sa Combo1.TEXT (recimo sa Combo1 zadan 1, ja moram izvuci najveci od DODATAK (u ovom slucaju 120), znaci red 22,120,1 izvlacim i on mi je bitan).

Pokusao sam na ovaj nacin, ali ne radi, izbacuje gresku da je .BOF ili .EOF
true:
Code:

"SELECT BROJ,DODATAK FROM TABLE1 WHERE GLAVNO LIKE '%" & Combo1.Text & "%' 
AND DODATAK IN (SELECT Max(DODATAK) FROM Table1)"

Nadam se da sam suvislo objasnio.

Zahvaljujem na pomoci.
Re: Problem sa SELECT u ADO bazi???? 23.10.2007. u 20:49 · pre 231 mesec #3
Poruku javlja zato sto je rezultat nula redova. odaberi 2 u Combu i imati ces rezultat.

Opcija za rjesenje:
Doradi SQL upit.
Potpis
steve585
Re: Problem sa SELECT u ADO bazi???? 23.10.2007. u 21:44 · pre 231 mesec
izmenjeno 1 put, poslednji put Aleksandar Ružičić 23.10.2007. u 22:05
  1. Aleksandar Ružičić23.10.2007. u 22:05zapis iz teksta poruke
#4
Ne znam kako da doradim upit, pokusao sam svakakve nacine ali nista.
Treba mi znaci ovo:
Ako zadam sa Combo1.Text recimo broj 1 (koje se nalazi u GLAVNO) da pronadje u kojem je redu najveci broj u DODATAK i da mi taj red izvuce iz baze. U ovom mom slucaju to bi bio red 22 ,120, 1 (jer je uzimano u obzir samo red prvi i drugi koji su u GLAVNO 1).
Nadam se da sam dobro objasnio.
Pozdrav!

Kod:
Code:

conn.CursorLocation = adUseClient
szSQL = "SELECT Glavno, Dodatak, Broj FROM table1 WHERE Glavno = '%" & Trim(Combo1.Text) & "%' AND Dodatak IN (SELECT Max(Dodatak) FROM table1)"
Set rs = New ADODB.Recordset
rs.Open szSQL, conn, adOpenStatic, adLockOptimistic, adCmdText
Re: Problem sa SELECT u ADO bazi???? 23.10.2007. u 23:00 · pre 231 mesec
izmenjeno 1 put, poslednji put vbbojan 23.10.2007. u 23:13
  1. vbbojan23.10.2007. u 23:13zapis iz teksta poruke
#5
Evo rešenja nedostaje ti jos samo da ogranicis select maksimalne vrednosti na glavno = 1
Code:

strSQL = "SELECT test.broj, test.dodatak, test.glavno " & _
             "FROM   test " & _
             "WHERE  dodatak = " & _
             "(SELECT MAX(dodatak) AS maksimum FROM test WHERE glavno = '" & combo1.text & "') " & _
             "AND glavno = '" & combo1.text & "'"


Pozdrav
Re: Problem sa SELECT u ADO bazi???? 23.10.2007. u 23:44 · pre 231 mesec #6
Hvala na trudu vbbojan ali ovaj primjer mi ne radi.
Radim u Visual Basicu 6 i baza je ADO ako je to bitno. Totalni sam početnik u bazama, pa mi je evo svaka pomoć dobrodošla.
Re: Problem sa SELECT u ADO bazi???? 24.10.2007. u 00:16 · pre 231 mesec #7
Hvala Bojane do neba. Uspjelo mi je, riješio sam problem evo nakon 3 dana pokušavanja.
Iskreno se zahvaljujem na pravoj pomoći.
Preuredio sam ovaj tvoj kod pa sad izgleda ovako (i radi super):

Code:
SELECT Broj, Dodatak, Glavno FROM table1 WHERE Dodatak = (SELECT Max(Dodatak) FROM table1 WHERE Glavno = '" & Trim(Combo2.Text) & "') AND Glavno = '" & Trim(Combo2.Text) & "'


Hajd molim te potvrdi još samo jel mi ovaj kod u redu da ne bih imao poslije problema.

Re: Problem sa SELECT u ADO bazi???? 24.10.2007. u 09:51 · pre 231 mesec #8
Neznam sta u stvari taj tvoj program treba da radi,
konkretan problem je resen, ali treba naravno gledati
i unapred, jedan od potencijalnih problema moze biti
i sledeće:

Šta ako imaš na primer ovakve podatke:

22 120 1
76 80 1
21 121 2
59 120 1

- u ovom slučaju upit će ti vratiti dva reda:
22 120 1
59 120 1

itd itd ....

Samo pusti mašti na volju ....

Pozdrav.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme