webForumDet fria alternativet

sql i Javascript

JavaScriptur Javascript

3 svar · 377 visningar · startad av swingman

Medlem sedan jan. 200686 inlägg
Frågan#1

hej jag har följande sql sats som jag vill bädda in i javascript. det fungarar bra att hämta värde när jag inte behöver hämta data från 2 tabeller men det blir fel när det är fler tabeller. nån som vet hur jag borde skriva?
Min fungerande sats iMysql browser ser ut så här:


select name_,d.id_,
sec_to_time(min(time_to_sec(TIMEDIFF(end_,start_)))) as minduration,
sec_to_time(max(time_to_sec(TIMEDIFF(end_,start_)))) as maxduration,
sec_to_time(avg(time_to_sec(TIMEDIFF(end_,start_))))as avgduration
from jbpm_processdefinition d, jbpm_processinstance i
where d.id_=i.processdefinition_ and name_ =?;


i javascript skriver jag så här:


...
this.queryText = "Select name_,ID_, (sec_to_time(min(time_to_sec(TIMEDIFF(end_,start_))))) as minduration,(sec_to_time(max(time_to_sec(TIMEDIFF(end_,start_))))) as maxduration,(sec_to_time(avg(time_to_sec(TIMEDIFF(end_,start_)))))as avgduration"
this.queryText += "from jbpm_processinstance, jbpm_processdefinition"
this.queryText += "where jbpm_processdefinition.id_ = jbpm_processinstance.processdefinition_ and name_ IN ("
if (NameParamLength > 0 ) {...


Felet ligger just där vid where delen...
Felet jag får är:
An exception occurred during processing. Please see the following message for details:
Cannot get the result set metadata.
SQL statement does not return a ResultSet object.
SQL error #1: 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 'jbpm_processinstance, jbpm_processdefinitionwhere jbpm_processdefinition.id_ = j' at line 1

Medlem sedan juni 20008 205 inlägg
#2

Du har ett syntaxfel i SQL:en. Skriv ut den färdiga frågan (eller läs felmeddelandet!) så ser du vad det är.

Medlem sedan jan. 200686 inlägg
#3

Jag får inget felmeddelande när jag skriver den färdiga frågan.

Medlem sedan jan. 2003296 inlägg
#4

Om du tittar på den allra sista raden i ditt första inlägg så ser du att det inte är något mellanslag innan "where" i din fråga. Och så tittar du några rader upp där du sätter ihop din fråga (this.queryText += ...) så borde du se orsaken. Du behöver alltså lägga till ett mellanslag innan "where" där. Samma sak innan "from ..." på raden innan, för det blir samma fel där...

135 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)