Update met CASE expressie werkt niet

Status
Niet open voor verdere reacties.

Scriabin

Gebruiker
Lid geworden
16 nov 2010
Berichten
10
Hallo allemaal! Snapt iemand waarom deze code niet werkt (in Access 2003)? Ik krijg als melding 'Syntaxisfout (operator ontbreekt)'. 'studentpersdienst' is overigens GEEN numeriek veld maar tekst(1).

Thanx!
Code:
UPDATE tblVerkopen
SET studentpersdienst=case studentpersdienst
when'1'then'S'
when'2'then'P'
when'3'then'D'
end;
 
Ik snap wel waarom hij niet werkt.... je gebruikt de SELECT CASE op een redelijk creatieve manier, waar Access niet veel mee kan. Het moet meer op deze manier:

Code:
Dim PersDienst As String
Select Case studentpersdienst
    Case 1
        PersDienst = "S"
    Case 2
        PersDienst = "P"
    Case 3
        PersDienst = "D"
End Select
strSQL "Update tblVerkopen SET studentpersdienst='" & PersDienst & "'"
 
Thanks, maar dit is VBA toch? Weet niet hoe ik dat moet runnen, komt pas in latere hoofdstukken aan bod ;-) Ik had de SQL overgenomen/aangepast vanuit MySQL, maar er zitten toch wel wat verschillen tussen MySQL SQL en Access SQL geloof ik...
 
De aanpassing is inderdaad VBA. Maar MySQL is dan ook geen Access SQL.... Je kunt er misschien een functie van maken, als je daar aan toe bent. Alternatief: gebruik de SWITCH functie in je query. Die lijkt, qua structuur, op wat je in de MySQL code hebt gedaan.
 
Laatst bewerkt:
@Tardis: Uiteraard bedoelde ik niet dat MySQL geen sql taal zou zijn, maar gelukkig is er altijd wel iemand (gek genoeg altijd dezelfde...) die mij terstond op mijn vingers tikt.... Heb je niks anders te doen?
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan