행이 MySQL 데이터베이스 테이블에 추가해야하지만 행이 아직 존재하지 않는 경우에만 추가하십시오. 데이터베이스 서버가 다운되어서 테스트 할 수 없지만 예상대로 작동합니까?추가하지 않으면 행이 있는지 확인하십시오 [MySQL]
INSERT INTO `blocks` (`block_file`,`settings_group`)
VALUES ('announcements','announcement_settings')
WHERE NOT EXISTS (SELECT `block_file`,`settings_group`
FROM `blocks`
WHERE `block_file`='announcements' AND `settings_group`='announcement_settings')
사운드 로직처럼 보입니다. 이것은 유효한 쿼리입니까, 아니면 이것을 수행하는 더 좋은 방법입니까?
SQL Server에서 이러한 유형의 접근 방식은 경쟁 조건을 제공합니다. 이것이 MySQL에서도 마찬가지인지는 확실하지 않습니다. 이 특정 쿼리입니까 아니면 항상이 두 열에 고유성을 적용하고 싶습니까? –
mysql과 동일 - 선택할 때 테이블을 수정할 수 없습니다. –