webForumDet fria alternativet

Fel i SQL-syntax

4 svar · 198 visningar · startad av Bendro

BendroMedlem sedan jan. 20011 439 inlägg
#1

På raden med koden:

set rsTCheck = my_Conn.Execute ("SELECT TOPIC_ID FROM " & strActivePrefix & "TOPICS WHERE TOPIC_ID = " & strRqTopicID)

Får jag felmeddelandet:

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

[TCX][MyODBC]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

Jag ser inget uppenbart fel...någon som har något förslag?

PeeerMedlem sedan mars 20025 362 inlägg
#2

Innehåller variabeln strActivePrefix ett mellanslag efter tabellnamnet? Annars får du lägga in det

my_Conn.Execute ("SELECT TOPIC_ID FROM " & strActivePrefix & " TOPICS WHERE TOPIC_ID = " & strRqTopicID)
--------------------------------------------------------------^
LarsGMedlem sedan dec. 200012 465 inlägg
#3
q = "SELECT TOPIC_ID FROM " & strActivePrefix & "TOPICS WHERE TOPIC_ID = " & strRqTopicID
response.write q
response.end

Jag gissar att strRqTopicID är odefinierad.

BendroMedlem sedan jan. 20011 439 inlägg
#4

mellanslaget skall vara kvar då TOPICS är en del av namnet...

Du gissade rätt LarsG...men felet kvarstår efter att jag åtgärdat detta.

BendroMedlem sedan jan. 20011 439 inlägg
#5

Ok..nu har jag hittat problemet tror jag.
Koden hör till en Dagens fråga-funktion...och det låg ingen aktiv dagens fråga i databasen. Efter att ha aktiverat en fråga försvann i alla fall felmeddelandet...även om funktionen i sig inte funkar som den skall. Men det är ett annat problem och antagligen ett annat forum :e

Genererad på 371 ms · cache AV · v20260730165559-full.f96bc7eb