Navicat
 sql >> база данни >  >> Database Tools >> Navicat

MySQL - Синтактична грешка в съхранена процедура с помощта на `if`

Не сте използвали THEN ключова дума и END IF .

Опитайте това:

SET @ExistedRefID = NULL;
SELECT ReferenceID INTO @ExistedRefID 
FROM filesrefrences 
WHERE RefrenceKey= pRefrenceKey;

IF (@ExistedRefID IS NULL) THEN 
    INSERT INTO filesrefrences(RefrenceKey, RefrenceCount)
    VALUES(pRefrenceKey,1);
    SELECT LAST_INSERT_ID();
ELSE
    UPDATE filesrefrences
    SET RefrenceCount= RefrenceCount+1
    WHERE ReferenceID= @ExistedRefID;
    SELECT @ExistedRefID;
END IF;



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Синхронизирайте 2 бази данни, инсталирани локално с Xampp

  2. MySQL грешка 2003 при използване на Navicat

  3. MariaDB не позволява отдалечени връзки

  4. Как да се свържете с sqlite база данни с парола

  5. MySQL - Синтактична грешка в съхранена процедура с помощта на `if`