라이브러리

[PHP] mysqli::multi_query - 데이터베이스에 하나 이상의 쿼리를 수행합니다.




mysqli::multi_query


mysqli::multi_query는 MySQLi 확장 함수의 메서드 중 하나입니다. 이 메서드는 여러 SQL 쿼리를 한번에 실행할 수 있는 기능을 제공합니다.

# 사용법


mysqli::multi_query는 다음과 같은 형식으로 사용할 수 있습니다.

#hostingforum.kr
php

bool mysqli::multi_query(string $query)



- `$query` : 실행할 SQL 쿼리 문자열입니다. 여러 쿼리를 한번에 실행할 수 있습니다. 쿼리 사이에는 세미콜론(`;`)을 사용하여 구분합니다.

# 예제


다음 예제는 mysqli::multi_query를 사용하여 여러 쿼리를 한번에 실행하는 방법을 보여줍니다.

#hostingforum.kr
php

<?php

// MySQLi 연결 설정

$host = 'localhost';

$username = 'root';

$password = '';

$dbname = 'example';



// MySQLi 연결 객체 생성

$conn = new mysqli($host, $username, $password, $dbname);



// 연결 오류가 있는지 확인

if ($conn->connect_error) {

    die("연결 오류: " . $conn->connect_error);

}



// 여러 쿼리 실행

$query = "

    CREATE TABLE IF NOT EXISTS users (

        id INT AUTO_INCREMENT PRIMARY KEY,

        name VARCHAR(255),

        email VARCHAR(255)

    );



    INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');

    INSERT INTO users (name, email) VALUES ('Jane Doe', 'jane@example.com');

";



// mysqli::multi_query 사용

if ($conn->multi_query($query)) {

    echo "쿼리 실행 성공
";

} else {

    echo "쿼리 실행 실패: " . $conn->error . "
";

}



// 결과 출력

do {

    // 결과를 출력합니다.

    if ($result = $conn->store_result()) {

        while ($row = $result->fetch_assoc()) {

            echo $row['name'] . " " . $row['email'] . "
";

        }

        $result->free();

    }

} while ($conn->next_result());



// 연결 종료

$conn->close();

?>



# 주의사항


- mysqli::multi_query는 여러 쿼리를 한번에 실행할 수 있지만, 결과를 처리하는 코드를 작성해야 합니다. 위 예제에서 `do-while` 루프를 사용하여 결과를 출력합니다.
- 쿼리 사이에 세미콜론(`;`)을 사용하여 구분합니다.
- 쿼리 실행 후 결과를 처리하는 코드를 작성해야 합니다. 위 예제에서 `store_result()` 메서드를 사용하여 결과를 저장하고 `fetch_assoc()` 메서드를 사용하여 결과를 출력합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 381 페이지

검색

게시물 검색