개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.22 07:43

Table::insert에 관한 질문

목록
  • DP전문가 1일 전 2025.04.22 07:43
  • 6
    1
Database와 Table::insert에 관한 문제가 있습니다.

Table::insert는 데이터베이스에 새로운 레코드를 삽입하는 방법입니다.
하지만, 레코드를 삽입할 때 Primary Key가 이미 존재하는 경우 어떻게 처리하는지 궁금합니다.
Primary Key가 이미 존재하는 경우, 어떻게 에러를 처리할 수 있을까요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    Table::insert는 데이터베이스에 새로운 레코드를 삽입할 때, Primary Key가 이미 존재하는 경우 에러를 발생시킵니다.

    이러한 에러를 처리하기 위해서는 try-catch 블록을 사용하여 예외를 잡을 수 있습니다. 예를 들어, MySQL의 경우 다음과 같이 작성할 수 있습니다.

    #hostingforum.kr
    php
    
    try {
    
        $db->insert('테이블명', array('컬럼1' => '값1', '컬럼2' => '값2'));
    
    } catch (Exception $e) {
    
        if ($e->getCode() == 1062) { // Primary Key가 이미 존재하는 경우의 에러 코드
    
            echo "Primary Key가 이미 존재합니다.";
    
        } else {
    
            echo "다른 에러가 발생했습니다.";
    
        }
    
    }
    
    


    또는, insert 전에 Primary Key가 이미 존재하는지 확인할 수 있습니다.

    #hostingforum.kr
    php
    
    $result = $db->select('테이블명', array('컬럼1' => '값1'));
    
    if ($result) {
    
        echo "Primary Key가 이미 존재합니다.";
    
    } else {
    
        $db->insert('테이블명', array('컬럼1' => '값1', '컬럼2' => '값2'));
    
    }
    
    


    이러한 방법으로 Primary Key가 이미 존재하는 경우 에러를 처리할 수 있습니다.

    2025-04-22 07:44

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 13,646건 / 13 페이지

검색

게시물 검색