MySQL INSERT 문 및 WHERE 절 문제 해결
MySQL의 INSERT
문은 WHERE
절을 지원하지 않습니다. 하나를 사용하려고 하면 오류가 발생합니다. WHERE
절은 삽입용이 아닌 SELECT
, UPDATE
, DELETE
문의 데이터를 필터링하는 데 사용됩니다.
일반적인 시나리오를 살펴보겠습니다.
<code class="language-sql">INSERT INTO Users (weight, desiredWeight) VALUES (160, 145) WHERE id = 1;</code>
이 쿼리는 이 있는 행이 존재하는 경우에만id = 1
새 행을 추가하여 해당 행을 효과적으로 업데이트하는 것을 목표로 합니다. 잘못된 INSERT
사용법입니다.
올바른 접근 방식:
솔루션은 원하는 결과에 따라 다릅니다.
id
을 포함하여 새 행을 삽입하려면 다음을 사용하세요.<code class="language-sql">INSERT INTO Users (id, weight, desiredWeight) VALUES (1, 160, 145);</code>
UPDATE
:<code class="language-sql">UPDATE Users SET weight = 160, desiredWeight = 145 WHERE id = 1;</code>
INSERT ... ON DUPLICATE KEY UPDATE
:<code class="language-sql">INSERT INTO Users (id, weight, desiredWeight) VALUES (1, 160, 145) ON DUPLICATE KEY UPDATE weight = 160, desiredWeight = 145;</code>
id
가 자동 증가 열인 경우 INSERT
문에서 생략합니다.<code class="language-sql">INSERT INTO Users (weight, desiredWeight) VALUES (160, 145);</code>
올바른 SQL 명령을 사용하면 오류를 방지하고 MySQL 데이터베이스 내에서 의도한 데이터 조작을 달성할 수 있습니다.
위 내용은 WHERE 절을 사용할 때 MySQL INSERT 쿼리가 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!