English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
mysqli_prepare() 함수는 SQL 문장을 실행하기 위해 준비합니다
mysqli_prepare() 함수는 SQL 문장을 실행하기 위한 준비를 하여, 이를 통해 이후 작업을 수행할 수 있는 문장 핸들을 반환합니다. 여기서는 매개변수 태그(“?”), 값을 지정하고 나중에 실행할 수 있습니다.
이곳에서는 단일 SQL 문장만 지원하며, 다중 SQL 문장을 지원하지 않습니다.
문장을 실행하기 전에 mysqli_stmt_bind_param() 함수를 사용하여 대체자 파라미터를 바인딩해야 합니다. 또한, 결과를 가져오기 전에 mysqli_stmt_bind_result() 함수를 사용하여 반환된 열 값을 바인딩해야 합니다.
mysqli_prepare($con, $str);
순번 | 파라미터 및 설명 |
---|---|
1 | con(필수) 이는 MySQL Server와의 연결을 나타내는 객체입니다 |
2 | str(필수) 이는 필요한 쿼리 문자열 값을 지정합니다 |
성공하면 이 함수는 statement 객체를 반환하며, 실패하면 반환됩니다false。
이 함수는 PHP 버전5에서 도입되었으며 모든 더 높은 버전에서 사용할 수 있습니다.
다음 예제는mysqli_prepare()함수 사용법(처리 과정 스타일)-
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Name VARCHAR(255), AGE INT)"; mysqli_query($con, $query); print("테이블 생성.....\n"); $stmt = mysqli_prepare($con, "INSERT INTO Test values(?, ?)"); mysqli_stmt_bind_param($stmt, "si", $Name, $Age); $Name = 'Raju'; $Age = 25; print("데이터 입력....."); //문장 실행 mysqli_stmt_execute($stmt); //문장 종료 mysqli_stmt_close($stmt); //연결 닫기 mysqli_close($con); ?>
결과 출력
테이블 생성..... 데이터 입력.....
테이블 내용을 확인하려면 다음과 같이 확인하십시오,$ minus;
mysql> select * from test; +------+------+ | Name | AGE | +------+------+ | Raju | 25 | +------+------+ 1 row in set (0.00 sec)
객체 지향 스타일에서 이 함수의 문법은 다음과 같습니다$ con-> prepare();。이하는 객체 지향 스타일의 $ minus 함수의 예제입니다;
<?php //연결 설정 $con = new mysqli("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Name VARCHAR(255), AGE INT)"; $con -> query($query); print("테이블 생성.....\n"); $stmt = $con -> prepare( "INSERT INTO Test values(?, ?)"); $stmt -> bind_param("si", $Name, $Age); $Name = 'Raju'; $Age = 25; print("데이터 입력....."); //문장 실행 $stmt->execute(); //문장 종료 $stmt->close(); //연결 닫기 $con->close(); ?>
결과 출력
테이블 생성..... 데이터 입력.....