Avatar billede jonas_h Nybegynder
08. februar 2006 - 18:48 Der er 3 kommentarer

Check om en værdi bliver negativ.

Har en forespørgsel, som siger
UPDATE table SET point = (point+" & intPoint & ") WHERE user=1"
Er der en måde, jeg kan få den til at have et minimum på point i databasen?  En bruger må ikke kunne have negativ point, men hvis han har 100 og der skal trækkes 10 fra, må dette godt være tilladt.
Avatar billede nielle Nybegynder
08. februar 2006 - 19:02 #1
"UPDATE table SET point = point+" & intPoint & " WHERE user=1 AND point+" & intPoint & " >= 0"
Avatar billede jonas_h Nybegynder
08. februar 2006 - 19:04 #2
Jaeh, havde jeg også tænkt på, men hvis han har 5 point, og der skal trækkes 10 fra, skal point ende på 0..
Avatar billede morhan Novice
08. februar 2006 - 20:34 #3
prøv med denne:

UPDATE table SET point = IF((point+" & intPoint & ")>0, point+" & intPoint & ",0) WHERE user=1"


Syntax:

http://dev.mysql.com/doc/refman/5.0/en/control-flow-functions.html

IF(expr1,expr2,expr3)

If expr1 is TRUE (expr1 <> 0 and expr1 <> NULL) then IF() returns expr2; otherwise it returns expr3. IF() returns a numeric or string value, depending on the context in which it is used.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester