webForumDet fria alternativet

Enkel update fråga :)

Databaser & SQL

4 svar · 179 visningar · startad av CokeLight

Medlem sedan juni 2000504 inlägg
Frågan#1

Hej allihopa :)

sqlUpdate = "UPDATE tblCriteria SET isSelected = true WHERE CriteriaValue LIKE '" & CriteriaChoice & "'"
		sqlUpdate2 = "UPDATE tblCriteria SET isSelected = false WHERE NOT CriteriaValue  LIKE '" & CriteriaChoice & "'" 

cn.execute(sqlUpdate)
cn.execute(sqlUpdate2)

Kan man slå ihop ovanstående till en sats? Syftet är alltså att sätta alla värden i boolean fältet till "false" förutom det recordset som är aktuellt; det ska sättas till "true".

Nån som vet hur man gör detta..? Ser lite snyggare ut än att ha två separata satser :) (Dessutom verkar det bli lite fel när man kör de tillsammans.. ).

(Jag kör en Access databas för tillfället och variablerna hämtas från en ASP sida).

------------------
"Between stimulus and response is a pause wherein our ability to choose lies".

Medlem sedan dec. 200012 464 inlägg
#2

Iif fungerar så att om uttrycket i första parametern är sant returneras true annars false. (Funktionen iif fungerar enbart i Access/Jet.)

sqlUpdate = "UPDATE tblCriteria SET isSelected = iif (criteriaValue like '" 
& criteriaChoice & "',true,false)"

jag har dock ingen möjlighet att testa detta.

------------------
essentitia preter non sans multiplicandum

Medlem sedan juni 2000504 inlägg
#3

Oj, oj.. heheh.. nu blev jag imponerad.. det där hade jag aldrig sett förut (fast å andra sidan är det mycket jag inte sett förut :)

Det fungerar ju hur bra som helst.. synd att det inte finns för SQL-server..

Tack så mycket !!

------------------
"Between stimulus and response is a pause wherein our ability to choose lies".

Medlem sedan dec. 200012 464 inlägg
#4

Om du har sql-server kan du använda case (som är ANSI standard)

sqlUpdate = "UPDATE tblCriteria SET isSelected = case when criteriaValue like '" 
& criteriaChoice & "' then 1 else 0 end"

------------------
essentitia preter non sans multiplicandum

Medlem sedan juni 2000504 inlägg
#5

jaha, ja.. kanon LarsG.. det här måste jag dokumentera någonstans :) Sånt här är svårt att komma på själv tycker jag.. har en SQL bok hemma, men såna här special knep tycker jag inte man hittar så lätt..

tack igen !

------------------
"Between stimulus and response is a pause wherein our ability to choose lies".

132 ms totalt · 2 externa anrop · v20260731065814-full.2ae45ccc
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)