if (status = 'on') BEGIN UPDATE tabel set Status='ON' WHERE UserID=99 END else if(status='off') if (status = "on) BEGIN UPDATE tabel set Status='off' WHERE UserID=99 END
Ovenstående er kun effektivt hvis du kun har en eller nogle få UserID du skal opdatere. Hvis der skla opdateres for mange UserID's samtidig, ville jeg skrevet sp'en om.
lorentsny -> hvad mener du, hvorfor er sp´en ikke god i forhold til flere users? Jeg bruger sp´en i en class (.Net), så antallet kan jo bare komme med som en parameter.
Tak for hjælpen begge - jeg brugte lidt fra begge svar - så smid et svar begge :-) karsten_larsen
Løsningen blev: Declare @Status varchar(3) SELECT @Status = User_Status FROM DB WHERE User_ID = @UserId
If @Status = 'On' BEGIN UPDATE DB SET User_Status = 'Off' WHERE Net_Neopir_User.User_ID = @UserId END
If @Status = 'Off' BEGIN UPDATE DB SET User_Status = 'On' WHERE User_ID = @UserId END
en anden løsning som jeg også var forbi er:
If (SELECT count(User_Status) FROM DB WHERE User_ID = @UserId AND User_Status = 'Off' ) = 1 BEGIN UPDATE DB SET User_Status = 'On' WHERE User_ID = @UserId END ELSE BEGIN UPDATE DB SET User_Status = 'Off' WHERE User_ID = @UserId END
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.