Ich habe die folgende MySQL-Abfrage, es verursacht einen Fehler, der Fehler ist auch unten.Ersetzen in ColdFusion Verderben SQL-Abfrage
SELECT DISTINCT s.id as id, s.auctioneer as auctioneer, s.advertType as advertType, s.saleType as saleType, an.name as auctioneerName, st.entryCopy as saleTypeName, at.entryCopy as advertTypeName, s.heading AS heading, sl.city AS city, sd.id AS sdId, sd.startDate AS startDate
FROM sales s LEFT JOIN saleloc sl ON sl.saleId = s.id LEFT JOIN saledates sd ON sd.saleLoc = sl.id,
auctioneers an,
lookupcopy st,
lookupcopy at
#replace(findWhere,"''","'","all")# AND
s.id = sd.saleId AND sl.saleId = s.id
AND an.id = s.auctioneer
AND st.id = s.saleType
AND at.id = s.advertType
GROUP BY id
ORDER BY startDate, auctioneerName, city
Fehler aus der Datenbank
SELECT DISTINCT s.id as id, s.auctioneer as auctioneer, s.advertType as advertType, s.saleType as saleType, an.name as auctioneerName, st.entryCopy as saleTypeName, at.entryCopy as advertTypeName, s.heading AS heading, sl.city AS city, sd.id AS sdId, sd.startDate AS startDate
FROM sales s
LEFT JOIN saleloc sl ON sl.saleId = s.id
LEFT JOIN saledates sd ON sd.saleLoc = sl.id, auctioneers an, lookupcopy st, lookupcopy at
'WHERE s.advertType > 0
AND s.saleType > 0
AND sl.region = "2" '
AND s.id = sd.saleId
AND sl.saleId = s.id
AND an.id = s.auctioneer
AND st.id = s.saleType
AND at.id = s.advertType
GROUP BY id
ORDER BY startDate, auctioneerName, city
Ich habe nicht den Code schreiben, und ich bin mir nicht sicher, warum die #replace() # verwendet wird, kann jeder sehen, wie die Syntaxfehler zu beheben es verursacht?
Auch bin ich mir nicht sicher, ob MySQL mit den doppelten Anführungszeichen in Ordnung ist und Sie die doppelten Anführungszeichen durch einfache Anführungszeichen ersetzen müssen um die Region variabel. – eapen