RulleRimfrost Skrevet 20. februar 2008 Del Skrevet 20. februar 2008 Jeg trenger å hente noe data fra en odbc-kobling alle brukere har, og har valgt å bygge queryen selv. Men, queryen som funker helt fint i Management Studio, funker ikke når jeg debugger prosjektet. Den gir feilmelding : ERROR[42000][Microsoft][ODBC Sql Server Driver] Incorrect syntax near '='Hvorfor, når spørringen funker direkte mot database ?[codebox]Dim dato As Date = Me.txtDate.TextDim objekt As String = Me.txtObject.TextDim ds As DataTable = Me.Ds.Tab1Dim query As String = _"SELECT Tabell2.Kol1, Tabell2.Kol2, Tabell2.Kol3, Tabell1.Kol1, Tabell1.Objekt " _& "FROM Tabell2 INNER JOIN Tabell1 ON Tabell2.Kol2 = Tabell1.Kol2" _& "WHERE (Tabell2.Kol3 = " & dato & ") " _& "AND (Tabell1.Kol1 IS NOT NULL)" _& "AND (Tabell1.Kol2 BETWEEN 3 AND 5) " _& "AND (Tabell1.Kol3 = " & objekt & ") " _& "ORDER BY Tabell1.Kol1, Tabell1.Kol2 DESC"Using ConDim adapter As New OdbcDataAdapter(query, Con)TryCon.Open()adapter.Fill(ds)Catch ex As OdbcExceptionMsgBox(ex.ToString)Catch ea As ExceptionMsgBox(ea.ToString)End TryEnd Using[/codebox] Lenke til kommentar
Harald Staff Skrevet 20. februar 2008 Del Skrevet 20. februar 2008 Tekstlikhet skal ha apostrof rundt teksten i SQL slik ='søkeord' Jeg tror dette skal funke: (Tabell1.Kol3 = '" & objekt & "') HTH. Beste hilsen Harald Lenke til kommentar
kaffenils Skrevet 20. februar 2008 Del Skrevet 20. februar 2008 Jeg trenger å hente noe data fra en odbc-kobling alle brukere har, og har valgt å bygge queryen selv. Men, queryen som funker helt fint i Management Studio, funker ikke når jeg debugger prosjektet. Den gir feilmelding : ERROR[42000][Microsoft][ODBC Sql Server Driver] Incorrect syntax near '='Hvorfor, når spørringen funker direkte mot database ? Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Parameteriserte spørringer Har alle fått det med seg nå????? Bruk et OdbcCommand object i OdbcDataAdapter konstruktøren i stedet for en streng.Deretter bruker du OdbcCommand.Parameters.AddWithValue og bygger opp en parameteriserte spørringer istedet for å bygge opp sql-strenger slik du gjør nå. Lenke til kommentar
RulleRimfrost Skrevet 21. februar 2008 Forfatter Del Skrevet 21. februar 2008 Takk. Det var en god ide Nils, ny lærdom for meg . Men en ting som jo var bra med strengen min, var at når jeg la den i en msgbox, så så jeg jo at den ikke var lik queryen jeg laget i Management Studio (det er så lett å hoppe over mellomrom når man bygger strenger) Btw så juksa jeg uansett. Databasen var bare 1GB, så jeg la backup på usb-stick, hentet den inn i testmiljø (laptopen min), og kjørte funksjonene via sql dataadapter, og restor'a til produksjon. Tenkte utenfor boksen liksom.... Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå