webForumDet fria alternativet

sql + jsp

1 svar · 247 visningar · startad av tosses

tossesMedlem sedan aug. 2003190 inlägg
#1

Jag har problem med en sqlfråga, som funkar bra men som behöver kunna köras även om val inte görs.. hmm ..

Här är frågan:

SELECT fo.PEORGNR, fo.REDNAMN, ae.CFARNR, ae.BEN, ae.BEGAD, ae.UADR, ae.PNR, ae.BEORT, ae.TEL, ae.NG1, ae.NG2, ae.NG3,  nykos.område, stkl.STKL, sni92.Fenkelbranch FROM ae INNER JOIN fo ON ae.PEORGNR = fo.PEORGNR inner join nykos on ae.CFARNR = nykos.CFARNR inner join stkl on stkl.STKL = fo.STKLA inner join sni92 on sni92.Kod = ae.NG1 WHERE fo.REDNAMN like '%"+request.getParameter("foretagsnamn")+"%' and nykos.område like '%"+request.getParameter("omrade")+"%' and stkl.STKL like '%"+request.getParameter("stkl")+"%' and sni92.Fenkelbranch like'%"+request.getParameter("branch")+"%' or ae.BEN like '%"+request.getParameter("foretagsnamn")+"%' and nykos.område like '%"+request.getParameter("omrade")+"%' and stkl.STKL like '%"+request.getParameter("stkl")+"%' and sni92.Fenkelbranch like'%"+request.getParameter("branch")+"%' limit "+fran+",30

I sql kan man skriva:

WHERE fo.REDNAMN like '%%'

Då får jag alla REDNAMN men i JSP skriver man:

WHERE fo.REDNAMN like '%"+request.getParameter("foretagsnamn")+"%'

Och innehåller inte request.getParameter("foretagsnamn") någonting så får jag ingenting. Om detta beror på " fnuttarna eller att foretagsnamn innehåller null vet jag inte.

Finns det nåt annat sätt att baka in JSPkod i sql-strängar utan att använda "?

I PHP kan man använda \"\"

HJÄLP!!!!

ViktorMedlem sedan aug. 20021 710 inlägg
#2

Då kan du skriva såhär

String foretagsnamn=request.getParameter("foretagsnamn");
if(foretagsnamn==null)
foretagsnamn="";
DIN_SQL

/Viktor

129 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
126 ms — hämta tråd, inlägg och bilagor (db)