So führen Sie ein SQL Server CE-Tabellenupdate von einer anderen Tabelle aus
Ich habe diese SQL:
UPDATE JOBMAKE SET WIP_STATUS='10sched1'
WHERE JBT_TYPE IN (SELECT JBT_TYPE FROM JOBVISIT WHERE JVST_ID = 21)
AND JOB_NUMBER IN (SELECT JOB_NUMBER FROM JOBVISIT WHERE JVST_ID = 21)
Es funktioniert, bis ich es in eine parametrisierte Abfrage verwandle:
UPDATE JOBMAKE SET WIP_STATUS='10sched1'
WHERE JBT_TYPE IN (SELECT JBT_TYPE FROM JOBVISIT WHERE JVST_ID = @jvst_id)
AND JOB_NUMBER IN (SELECT JOB_NUMBER FROM JOBVISIT WHERE JVST_ID = @jvst_id)
Duplicated parameter names are not allowed. [ Parameter name = @jvst_id ]
Ich habe Folgendes ausprobiert (was meiner Meinung nach in SQL Server 2005 funktionieren würde - obwohl ich es nicht ausprobiert habe):
UPDATE JOBMAKE
SET WIP_STATUS='10sched1'
FROM JOBMAKE JM,JOBVISIT JV
WHERE JM.JOB_NUMBER = JV.JOB_NUMBER
AND JM.JBT_TYPE = JV.JBT_TYPE
AND JV.JVST_ID = 21
There was an error parsing the query. [ Token line number = 3,Token line offset = 1,Token in error = FROM ]
Ich kann also dynamisches SQL schreiben, anstatt Parameter zu verwenden, oder ich kann 2 Parameter mit demselben Wert übergeben, aber weiß jemand, wie das besser geht?
Colin