Vraag & Antwoord

Programmeren

Gegevens ophalen uit MySQL met VB

6 antwoorden
  • Public Function Load_Batch_From_Server(ByVal BatchID As Long, ByVal UnitID As Integer) As Boolean Dim Huidigebatch As Type_Weger_VolledigeBatch Dim TBl As ADODB.Recordset Dim sqlstring As String 'Database openen On Error GoTo Load_Batch_From_Server_Error Connectiestatus = Open_Connection If Connectiestatus = True Then Set TBl = New ADODB.Recordset TBl.CursorLocation = adUseClient TBl.Open "SELECT * FROM tbl_afwegingenbatch INNER JOIN tbl_unitcomponenten ON tbl_afwegingenbatch.componentnr= tbl_unitcomponenten.componentnr WHERE tbl_unitcomponenten.actief=1 AND unitID=" & UnitID & " AND batchid=" & BatchID & " ORDER BY ComponentVolgnr;", Connection Call ChangeDBConnectionCounter(True) If TBl.BOF = True And TBl.EOF = True Then Call ChangeDBConnectionCounter(False) Exit Function End If TBl.MoveFirst ComponentTeller = 0 Do While TBl.EOF = False With Huidigebatch.Component(ComponentTeller) .BijweegComponent = IIf(TBl.Fields("Bijweegcomp") <> 0, True, False) Met de vorige functie wil ik de gegevens voor een bepaalde batch en unitID uit MySQL halen. mr hij geeft de SQLstring altijd aan als leeg (TBl.BOF=true en TBl.EOF=true) en toch bevinden zich hier gegevens in??? Zit er dan een fout in de code om de gegevens op te vragen? alvast bedankt mvg Dr Gates
  • [code:1:dee504de26] TBl.Open "SELECT * FROM tbl_afwegingenbatch INNER JOIN tbl_unitcomponenten ON tbl_afwegingenbatch.componentnr= tbl_unitcomponenten.componentnr WHERE tbl_unitcomponenten.actief=1 AND unitID=" & UnitID & " AND batchid=" & BatchID & " ORDER BY ComponentVolgnr;", Connection [/code:1:dee504de26]Heb je deze query ook al getest met behulp van je Mysql browser?
  • ja, en werkt perfect! ik krijg elke keer een hele reeks gegevens mr toch neemt hij er geen aan.
  • deze foutmelding kreeg ik daarnet na even te zoeken: De gegevensvoorziening of een andere service heeft de status E_FAIL geretourneerd. foutnummer:-2147467259
  • ok, ik heb het probleem al kunnen oplossen. Ik moest gewoon de SELECT*FROM vervangen door SELECT tbl_...., tbl_,... FROM. ik moet elke kolom apart benoemen. Maar nu heb ik het volgende probleem bij het zoeken naar deze verschillende records, hij kan de items niet vinden. ik neem nu deze sqlstring : SELECT tbl_afwegingenbatch.componentnr, tbl_afwegingenbatch.soll, tbl_afwegingenbatch.status, tbl_unitcomponenten.bijweegcomp, tbl_unitcomponenten.componentvolgnr FROM tbl_afwegingenbatch INNER JOIN tbl_unitcomponenten ON tbl_afwegingenbatch.componentnr= tbl_unitcomponenten.componentnr WHERE tbl_unitcomponenten.actief=1 AND unitID=" & UnitID & " AND batchid=" & BatchID & " ORDER BY ComponentVolgnr; Maar nu in mijn code bij huidigebatch. .... geeft hij telkens: Kan het item niet vinden in de collectie die overeenkomt met de gewenste naam of het gewenste nummer. foutnummer: 3265 ?? nu moet hij de records toch alleen nog mr uit de database te halen?
  • Deze foutmelding geeft aan dat een bepaald veld niet gevonden kan worden. Controleer nog eens of je alle velden goed genoteerd hebt. Wat is dat huidigebatch ding voor iets? Heeft dat geen wijzigingen nodig?

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.