Gå til innhold

"Knoter" Visual Basic med sql-kommandoer ?


Anbefalte innlegg

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.Text

Dim objekt As String = Me.txtObject.Text

Dim ds As DataTable = Me.Ds.Tab1



Dim 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 Con

Dim adapter As New OdbcDataAdapter(query, Con)

Try

Con.Open()

adapter.Fill(ds)

Catch ex As OdbcException

MsgBox(ex.ToString)

Catch ea As Exception

MsgBox(ea.ToString)

End Try

End Using[/codebox]

Lenke til kommentar
Videoannonse
Annonse
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

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

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...