07. maj 2001 - 15:35Der er
28 kommentarer og 1 løsning
If sætning i sql sætning
Kan man ikke lave noget som dette her:
SQL = \"DELETE FROM mailingliste where id =\"& request(\"id\") & \" <% If Alder = \"\" THEN %> and Alder = \'\" & request.querystring(\"Alder\") & \"\' <% else %> <% end if %> <% If Koen = \"\" THEN %> and Koen = \'\" & request.querystring(\"Koen\") & \"\' <% else %> <% end if %> <% If Postnummer = \"\" THEN %> and Postnummer = \'\" & request.querystring(\"Postnummer\") & \"\' <% else %> <% end if %>\"
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
SQL = \"DELETE FROM mailingliste where id =\"& request(\"id\") If Alder = \"\" THEN SQL = SQL & \" and Alder = \'\" & request.querystring(\"Alder\") & \"\'\" end if If Koen = \"\" THEN SQL = SQL & \" and Koen = \'\" & request.querystring(\"Koen\") & \"\'\" end if If Postnummer = \"\" THEN SQL = SQL & \" and Postnummer = \'\" & request.querystring(\"Postnummer\") & \"\'\" end if %>
Det du skal være opmærksom på er at alle de felter der er udfyldt skal være opfyldt. Dvs. både id og de udfylde felter. ID feltet angiver sandsynligvis et individ og er som så meget afgrænset uden de udeerligere kriterier.
I nedenstående vil id\'et også være valgbart
<%
SQL = \"DELETE FROM mailingliste where true\" If Alder = \"\" THEN SQL = SQL & \" id =\" & request(\"id\") end if If Alder = \"\" THEN SQL = SQL & \" and Alder = \'\" & request.querystring(\"Alder\") & \"\'\" end if If Koen = \"\" THEN SQL = SQL & \" and Koen = \'\" & request.querystring(\"Koen\") & \"\'\" end if If Postnummer = \"\" THEN SQL = SQL & \" and Postnummer = \'\" & request.querystring(\"Postnummer\") & \"\'\" end if %>
SQL = \"DELETE FROM mailingliste where true\" If id <> \"\" THEN SQL = SQL & \" id =\" & request(\"id\") end if If Alder <> \"\" THEN SQL = SQL & \" and Alder = \'\" & request.querystring(\"Alder\") & \"\'\" end if If Koen <> \"\" THEN SQL = SQL & \" and Koen = \'\" & request.querystring(\"Koen\") & \"\'\" end if If Postnummer <> \"\" THEN SQL = SQL & \" and Postnummer = \'\" & request.querystring(\"Postnummer\") & \"\'\" end if %>
Jeg får denne fejl: Microsoft VBScript compilation (0x800A0409) Unterminated string constant /nyhed/admin.asp, line 10, column 81 SQL = \"DELETE FROM mailingliste where id =\"& request(\"id\") & \" If Alder = \"\" THEN --------------------------------------------------------------------------------^
ditt script vil generere en SQL som ser ca sånn ut:
DELETE FROM mailingliste where true id = ...
etter din oppdatering @ 16:06:10 han få en SQL som ser ca sånn ut:
DELETE FROM mailingliste where true and id = ...
men det var jo egentlig ikke det spørsmålet gikk ut på. Spørsmålet var jo om man kunne benytte if...then i en SQL. Og det kan man på den måten som både jeg og perla har vist. Hvordan selve SQL\'en ser ut, var jo strengt tatt ikke en del av spørsmålet...
nute > Det har du ret i, men sådan er 99% af alle spørgsmålene. Måske fordi at man ikke skriver alle de ting man vil vide, for så får man flere svar, men også meget lidt indhold. :-)
Se dette er det der står på siden: SQL = \"SELECT FROM mailingliste where Confirm=true \" If id <> \"\" THEN SQL = SQL & \" id =\" & request(\"id\") end if If Alder <> \"\" THEN SQL = SQL & \" and Alder = \'\" & request.querystring(\"Alder\") & \"\'\" end if If Koen <> \"\" THEN SQL = SQL & \" and Koen = \'\" & request.querystring(\"Koen\") & \"\'\" end if If Postnummer <> \"\" THEN SQL = SQL & \" and Postnummer = \'\" & request.querystring(\"Postnummer\") & \"\'\" end if
Dette er hvad der er i urlen: admin.asp?mode=send&alder=1&Koen=1&subject=dfg&tekst=dfg&tilbage=137
SQL = \"SELECT FROM mailingliste where true \" If id <> \"\" THEN SQL = SQL & \"and id =\" & request(\"id\") end if If Alder <> \"\" THEN SQL = SQL & \" and Alder = \'\" & request.querystring(\"alder\") & \"\'\" end if If Koen <> \"\" THEN SQL = SQL & \" and Koen = \'\" & request.querystring(\"koen\") & \"\'\" end if If Postnummer <> \"\" THEN SQL = SQL & \" and Postnummer = \'\" & request.querystring(\"postnummer\") & \"\'\" end if %>
Jeg får denne fejl med det script du har sendt mig: Error Type: Microsoft VBScript runtime (0x800A005E) Invalid use of Null: \'Split\' /nyhed/view1.asp, line 52
SQL = \"SELECT * FROM mailingliste where Confirm=true \" If Alder <> \"\" THEN SQL = SQL & \" and Alder = \" & Alder end if If Koen <> \"\" THEN SQL = SQL & \" and Koen = \" & Koen end if If Postnummer <> \"\" THEN SQL = SQL & \" and Postnummer = \'\" & request.querystring(\"postnummer\") & \"\'\" end if
\'on error resume next Dim Felt, NewString
\'response.write SQL \'response.end
set slet = conn.execute( SQL ) do while not slet.eof
Fint nok nu virker det, skulle lige rettes en lille smule tak
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.