>백엔드 개발 >PHP 튜토리얼 >MySQLi를 사용하여 단일 데이터베이스 레코드를 효율적으로 검색하는 방법은 무엇입니까?

MySQLi를 사용하여 단일 데이터베이스 레코드를 효율적으로 검색하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-26 06:41:09944검색

How to Efficiently Retrieve a Single Database Record Using MySQLi?

MySQLi를 사용하여 데이터베이스에서 단일 레코드 검색

루프를 사용하지 않고도 MySQLi를 사용하여 데이터베이스에서 단일 레코드를 검색할 수 있습니다. 효율적인 데이터 가져오기를 위해서는 관련 구문과 기술을 이해하는 것이 중요합니다.

연관 배열 행 가져오기

전체 행을 연관 배열로 검색하려면 fetch_assoc( ) 결과 개체의 메서드입니다. 예를 들어, "users" 테이블에서 행을 검색하려면:

<?php
// Connect to the database
$query = "SELECT * FROM users LIMIT 1";
$result = $conn->query($query);
$row = $result->fetch_assoc();

// Print the user's name
echo "Name: {$row['name']}";
?>

단일 값 가져오기

특정 값만 필요한 경우 fetch_column( ) 방법(PHP 8.1 이상)을 사용할 수 있습니다. 8.1 이전 PHP 버전의 경우 fetch_row()[0] 구문을 사용하세요. 예를 들어, 데이터베이스의 사용자 수를 검색하려면:

<?php
// Connect to the database
$query = "SELECT COUNT(*) FROM users";
$result = $conn->query($query);
$count = $result->fetch_column();

// Print the user count
echo "Total users: {$count}";
?>

변수와 함께 준비된 명령문 사용

쿼리에서 변수를 사용해야 하는 경우 prepare SQL 주입을 방지하려면 문을 사용해야 합니다. PHP 8.2 이상의 경우 실행_쿼리() 메서드를 사용하세요.

<?php
// Connect to the database
$query = "SELECT * FROM users WHERE id = ?";
$id = 1;
$row = $conn->execute_query($query, [$id])->fetch_assoc();

// Print the user's name
echo "Name: {$row['name']}";
?>

PHP 8.2 이전 버전의 경우 명령문을 수동으로 준비하고 실행하세요.

<?php
// Connect to the database
$query = "SELECT * FROM users WHERE id = ?";
$stmt = $conn->prepare($query);
$stmt->bind_param('s', $id); // Bind the variable as a string
$id = 1;
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_assoc();

// Print the user's name
echo "Name: {$row['name']}";
?>

위 내용은 MySQLi를 사용하여 단일 데이터베이스 레코드를 효율적으로 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.