0
MySQL IF를 사용하여 업데이트 할 테이블을 선택할 수 있는지 궁금합니다. 나는 이런 식으로 뭔가를 시도하고있다 :테이블을 결정하는 Mysql if 문
UPDATE IF(:listId = 'global', `profanity`,`accountProfanity`) SET `active` = IF(`active` = 1,0,1) WHERE `id` = 1
:listId
할 수있는 벤 문자열 global
또는 숫자. 언제 : listId가 숫자인지, profanity
테이블을 업데이트하려고합니다. 그렇지 않으면 accountProfanity
을 업데이트하려고합니다. 나는이 쿼리를 실행하면 나는 결과로이 얻을 :
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF('global' = 'global', `profanity`,`accountProfanity`) SET `active` = IF(`activ' at line 1
이 작업을 수행하는 또 다른 방법이 있나요?
당신이에서 listId의 값을 받고 어디? –
함수 호출. 그러나 그것은 내가 생각하는 것과 관련이 없습니다. 매개 변수는 PDO SQL에 의해 올바르게 추가됩니다. MySQL이 IF 문을 실행하지 못합니다 – SheperdOfFire