webForumDet fria alternativet

... SELECT * From ...

4 svar · 533 visningar · startad av SoulGod

SoulGodMedlem sedan aug. 20051 200 inlägg
#1

Vad är fel?
Jag får följande felmeddelande:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14' 

[MySQL][ODBC 3.51 Driver][mysqld-5.0.18-nt]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 

/bokning/lediga.asp, line 82

och LIne82 är:

<% Set RS = Connect.Execute("SELECT * FROM datorer WHERE ledig = " & Ja & "") %>

Det är en MySQL databas. Connect-strängen är:
Connect.Open "DRIVER={MySQL ODBC 3.51 Driver}; server=localhost; uid=root; pwd=*; database=sp; option=16384"

@ndersMedlem sedan juni 200032 969 inlägg
#2
  1. Skriv alltid ut den färdiga sql-frågan med response.write så är det lättare att se vad som är fel.
  2. Vad innehåller variabeln Ja?

I övrigt: http://www.webforum.nu/showthread.php?t=142490

PeeerMedlem sedan mars 20025 907 inlägg
#3
<% Set RS = Connect.Execute("SELECT * FROM datorer WHERE ledig = 'Ja'") %>

Förutsatt att "ledig" är ett textfält och ska innehålla värdet Ja.
Annars kanske

<% Set RS = Connect.Execute("SELECT * FROM datorer WHERE ledig = '" & Ja &"'") %>

Är det du söker.

SoulGodMedlem sedan aug. 20051 200 inlägg
#4

*REDIGERING*
Såg inte att ovanstående hade skrivit.
Det stämde precis. Tack så jättemkt!

@ndersMedlem sedan juni 200032 969 inlägg
#5

Se Peeers första exempel då.

1. Förstod inte exakt där.. ? *korkad*

  1. Lägg SQL-frågan i en variabel.
strSQL = "SELECT foo FROM foobar WHERE bar = " & variabel
  1. Använd Response.write för att skriva ut SQL-frågan till webbläsaren för att kunna se vad som är fel.
Response.write strSQL
130 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)