programing

존재하지 않는 코드 오류 - 마리아DB

bestcode 2022. 9. 27. 23:59
반응형

존재하지 않는 코드 오류 - 마리아DB

이유는 잘 모르겠습니다.

INSERT INTO $db.further_assess (taskid) VALUES ('id')
            WHERE NOT EXISTS (SELECT * FROM $db.further_assess where taskid='$id')

이 에러가 발생하고 있습니다.

You have an error in your SQL syntax; check the manual that corresponds to 
your MariaDB server version for the right syntax to use near 'WHERE NOT 
EXISTS (SELECT 1 FROM risk_assessment.further_assess where taskid='222' at line 2

이 존재하지 않는 경우 SQL insert(Sqlow가 존재하지 않는 경우

업데이트:

이제 정답인 질문:

        INSERT INTO $db.further_assess (taskid, reportid)
         SELECT '$id', '$report_id'
         FROM (SELECT 1) as dummytable
         WHERE NOT EXISTS (SELECT * FROM $db.further_assess where taskid='$id');

INSERT 문에는 WHERE 절이 없습니다.조건부 INSERT 문을 실행하는 경우 INSERT-SELECT 문을 더미 테이블과 함께 사용할 수 있습니다.

INSERT INTO $db.further_assess (taskid) 
   SELECT 'id'
   FROM (SELECT 1) as dummytable
   WHERE NOT EXISTS (SELECT * FROM $db.further_assess where taskid='$id')

훨씬 더 심플하고(또한

INSERT IGNORE  INTO $db.further_assess
    (taskid)
    VALUES
    ('$id')

언급URL : https://stackoverflow.com/questions/41754773/error-with-not-exists-code-mariadb

반응형