"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > PDO를 사용하여 행 존재를 확인하는 방법은 무엇입니까?

PDO를 사용하여 행 존재를 확인하는 방법은 무엇입니까?

2024-11-01에 게시됨
검색:871

How to Check for Row Existence Using PDO?

PDO를 사용하여 행 존재 확인

PDO를 사용하여 데이터베이스에서 행 존재를 확인하는 데 어려움을 겪었습니다. 이 문제를 해결하려면 다음 해결 방법을 고려하십시오.

답변에서 제안한 대로 쿼리의 반환 값을 직접 확인할 수 있습니다. 예는 다음과 같습니다.

$stmt = $conn->prepare('SELECT * FROM table WHERE ID=?');
$stmt->bindParam(1, $_GET['id'], PDO::PARAM_INT);
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);

if (!$row) {
    echo 'Row does not exist';
}

이 코드에서 $stmt->execute()는 쿼리 실행을 시도합니다. 행이 발견되지 않으면 $stmt->fetch()는 FALSE를 반환합니다. 이를 통해 if (!$row) 조건을 사용하여 행이 존재하는지 확인할 수 있습니다.

또한 여러 행을 확인하거나 행 가져오기를 피하려면 $stmt-> fetchAll() 메소드:

$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);

if (!$rows) {
    echo 'No rows found';
}

또는 행이 발견되면 MySQL에 1을 반환하도록 지시할 수 있습니다.

$sql = 'SELECT 1 from table WHERE id = ? LIMIT 1';
$stmt = $conn->prepare($sql);
$stmt->execute([$_GET['id']]);

if ($stmt->fetchColumn()) echo 'Row found';

이 접근 방식을 사용하면 행을 가져올 필요가 없어 효율성이 향상됩니다.

릴리스 선언문 이 글은 1729560796에서 재인쇄되었습니다. 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3