>  Q&A  >  본문

중복 키 오류를 포착하려면 데이터베이스에 삽입을 수행하세요.

응용 프로그램에 중복된 기본 키 데이터를 삽입할 수 있습니다. 삽입하기 전에 키가 이미 존재하는지 확인하는 가장 효율적인 방법이 무엇인지 의심스럽습니다. 아니면 그냥 삽입하고 은행에서 오류를 반환한 다음 처리하도록 합니까? 어느 것이 덜 영향을 미치나요? 감사합니다

P粉920835423P粉920835423205일 전387

모든 응답(1)나는 대답할 것이다

  • P粉362071992

    P粉3620719922024-03-29 07:32:06

    가장 효율적인 방법은 ON DUPLICATE KEY UPDATE 子句的 INSERT를 사용하여 쿼리를 사용하는 것입니다.

    기본 키가 없으면 새 레코드가 삽입되고, 기본 키가 이미 있으면 기본 키 레코드의 지정된 필드만 업데이트됩니다(오류가 발생하지 않음).

    예를 들어 user_id 不存在,以下代码将创建一个新用户。如果user_id确实存在,它只会更新last_visited_date.

    으아악

    이 접근 방식을 사용하면 하나의 쿼리로 새 레코드를 생성하고 기존 레코드를 업데이트할 수 있으므로 기존 기본 키를 확인할 필요가 없습니다.

    참고: 기본 키가 자동 증분 인덱스인 경우 기본 키가 이미 존재하는 한 MySQL은 ON DUPLICATE UPDATE 子句视为与 INSERT 查询相同,因此下一个 ID 将增加 < code>1 작업을 수행합니다.

    ON DUPLICATE KEY UPDATE 절을 사용하지 않으려는 경우 기존 기본 키에서 오류를 잡는 것이 가장 성능이 좋은 접근 방식입니다.

    회신하다
    0
  • 취소회신하다