> 데이터 베이스 > MySQL 튜토리얼 > WHERE 절을 사용할 때 MySQL INSERT 쿼리가 실패하는 이유는 무엇입니까?

WHERE 절을 사용할 때 MySQL INSERT 쿼리가 실패하는 이유는 무엇입니까?

DDD
풀어 주다: 2025-01-19 06:52:12
원래의
933명이 탐색했습니다.

Why Does My MySQL INSERT Query Fail When Using a WHERE Clause?

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: id가 자동 증가 열인 경우 INSERT 문에서 생략합니다.
<code class="language-sql">INSERT INTO Users (weight, desiredWeight) VALUES (160, 145);</code>
로그인 후 복사

올바른 SQL 명령을 사용하면 오류를 방지하고 MySQL 데이터베이스 내에서 의도한 데이터 조작을 달성할 수 있습니다.

위 내용은 WHERE 절을 사용할 때 MySQL INSERT 쿼리가 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿