Gå til innhold

Anbefalte innlegg

Hallo igjen!!

 

Har et spørsmål til jeg gjerne skulle hatt svar på!!

 

Jeg har koblet prosjektet mitt til en database over biler, de er delt inn i Bil ID, Merke, Modell, Type osv. I programmet mitt skal det gå an å søke etter biler på den måten at du først velger Merke, deretter Modell og til slutt Type. Jeg har valgt å bruke 3 ComboBoxer til disse valgene, disse er igjen koblet til databasen.

 

Jeg har 3 DECommand'er med en SQL-setning hver.

 

Disse fungerer slik: den første, til merke, gjør bare slik at det kun vises et merke av hvert slag (dette fikk jeg hjelp til i forrige innlegg). Den andre, til modellene, viser aktuelle modeller f.eks 240, 244 osv til Volvo. Og den siste fungerer på samme måte som den til modellene, finner aktuell type til den valgte modellen!

 

Problemet er altså at det er veldig tungvint å lage en SQL-setning for hver modell, derfor spørr jeg om det går an å forandre denne når programmet kjører.Eventuellt om det går an å kjøre SQL-setninger under kjøring av programmet.

 

Et eksempel på SQL-setningen til Modell ComboBoxen:

 

SELECT DISTINCT Modell, Merke 

FROM Biler 

WHERE (Merke = 'Alfa Romeo')

 

 

På forhånd takk

 

Bjørn Håkon Noss

Lenke til kommentar
Videoannonse
Annonse

Problemet er altså at det er veldig tungvint å lage en SQL-setning for hver modell, derfor spørr jeg om det går an å forandre denne når programmet kjører.Eventuellt om det går an å kjøre SQL-setninger under kjøring av programm

 

Er ikke helt sikker på hva du mener her, så med fare for å misforstå gjør jeg et forsøk.

Ved en endring i en combobox kan du vel sette en global variabel (f.eks modell) som inneholder info om modell og så bruker du infoen i sql setn senere.

 

Er ikke sikkert jeg har fått helt med meg problemet ditt.

 

-Maestro-

Lenke til kommentar
Ved en endring i en combobox kan du vel sette en global variabel (f.eks modell) som inneholder info om modell og så bruker du infoen i sql setn senere.

 

 

Ja, jeg er med på det, men hvordan kjører jeg en SQL-setning senere i programmet imens det kjører. Fordi det jeg tenkte meg var at jeg erstattet: "Alfa Romeo" i eksempelet mitt med det brukeren faktisk valgte. Men jeg er ikke helt sikker på hvordan jeg skriver koden slik at du kan bruke SQL-setninger. Har du svar på det blir jeg veldig glad :lol:

 

Bjørn Håkon Noss

Lenke til kommentar

Ja, jeg er med på det, men hvordan kjører jeg en SQL-setning senere i programmet imens det kjører. Fordi det jeg tenkte meg var at jeg erstattet: "Alfa Romeo" i eksempelet mitt med det brukeren faktisk valgte. Men jeg er ikke helt sikker på hvordan jeg skriver koden slik at du kan bruke SQL-setninger

 

Henviser igjen til samme tanke, om at ved nytt valg av merke så kan du utføre kode. Har lagt ved et eksempel jeg har laget tidligere, her ved bruk av radiobuttons der jeg endrer innhold i en comboboks alt etter valgt radiobutton. Samme prinsipp kan benyttes til ditt bruk, vil jeg tro. :)

 


   Private Sub radio_bok_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles radio_bok.CheckedChanged

       combo_sjanger.Items.Clear()

       Dim DB As String = "D:publikasjonskioskenPublikasjoner.mdb"

       Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DB & ";")

       Dim ds As New DataSet("Bok")



       conn.Open()



       Dim query As String = "SELECT DISTINCT sjanger FROM tabpublikasjon, tabbok WHERE pubid = refid"

       Dim dataAdapter As New OleDbDataAdapter(query, conn)



       dataAdapter.Fill(ds)

       Dim i As Integer

       combo_sjanger.Items.Add("Alle")



       For i = 0 To ds.Tables(0).Rows.Count - 1

           combo_sjanger.Items.Add(ds.Tables(0).Rows(i).Item("sjanger"))

       Next



       conn.Close()



       combo_sorter.Items.Clear()

       combo_sorter.Items.Add("Alle")

       combo_sorter.Items.Add("tittel")

       combo_sorter.Items.Add("enhetspris")

       combo_sorter.Items.Add("forfatter")



   End Sub

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...