>데이터 베이스 >MySQL 튜토리얼 >PHP에서 MySQL 저장 프로시저를 호출하는 방법

PHP에서 MySQL 저장 프로시저를 호출하는 방법

PHPz
PHPz원래의
2023-04-17 16:41:39881검색

MySQL과 PHP는 웹 개발에 자주 사용되는 기술입니다. 그 중 저장 프로시저는 MySQL의 중요한 기능입니다. 이번 글에서는 MySQL 저장 프로시저를 소개하고 이를 PHP 언어와 결합하여 구현해 보겠습니다.

  1. MySQL 저장 프로시저란 무엇인가요?

MySQL 저장 프로시저는 프로그램에서 정의하고 호출할 수 있는 재사용 가능한 SQL 코드 블록입니다. 매개변수를 받아들이고 값을 반환하는 함수와 유사합니다. 저장 프로시저는 MySQL 서버 측에 저장되고 클라이언트 코드에서 호출될 수 있습니다.

  1. 저장 프로시저의 장점
  • 코드 재사용성을 향상시키고 SQL 문 반복을 방지합니다.
  • 데이터 보안을 강화하고 저장 프로시저를 통한 액세스 제어를 허용합니다.
  • 성능 향상, 저장 프로시저 서버 측에서 실행하면 네트워크 통신이 줄어듭니다. 오버헤드
  • 는 동시에 여러 SQL 문을 호출하여 데이터베이스 상호 작용을 줄이고 데이터베이스에 대한 부담을 줄일 수 있습니다.
  1. MySQL 저장 프로시저의 기본 구문

MySQL 저장 프로시저의 구문은 다른 언어의 함수 및 프로시저와 유사합니다. CREATE, PROCEDURE, END 세 가지 키워드로 구성됩니다. CREATE PROCEDURE 키워드 뒤에는 저장 프로시저의 이름과 매개변수 목록, 저장 프로시저의 본문, 마지막으로 END 키워드가 옵니다.

다음은 간단한 MySQL 저장 프로시저 예입니다.

CREATE PROCEDURE `get_employee`(IN id INT, OUT name VARCHAR(50), OUT age INT)
BEGIN
  SELECT `name`, `age` INTO name, age FROM `employee` WHERE `id` = id;
END

위 저장 프로시저는 id 매개변수를 받아들이고 직원 테이블에서 id에 해당하는 이름과 나이를 쿼리한 다음 이를 이름과 나이 출력 매개변수에 할당합니다.

  1. PHP에서 MySQL 저장 프로시저 호출

PHP 코드에서 MySQL 저장 프로시저를 호출하는 것은 매우 간단합니다. 저장 프로시저를 호출하려면 MySQLi 확장 또는 PDO 확장에서 제공하는 CALL 문을 사용할 수 있습니다. 다음은 MySQLi 확장을 사용하여 MySQL 저장 프로시저를 호출하는 샘플 코드입니다.

// 配置连接参数
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// 建立连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

// 调用存储过程
$id = 1;
$stmt = $conn->prepare("CALL get_employee(?, ?, ?)");
$stmt->bind_param("i", $id);
$stmt->bind_result($name, $age);
$stmt->execute();
$stmt->fetch();
$stmt->close();

echo "Name: ".$name.", Age: ".$age;

위 코드는 MySQL 데이터베이스에 연결한 다음 id 매개변수를 전달하는 CALL 문을 통해 get_employee라는 저장 프로시저를 호출합니다. 그런 다음 bind_result 메소드를 사용하여 저장 프로시저의 출력 매개변수를 PHP 변수에 바인딩하고 마지막으로 저장 프로시저를 실행한 후 fetch 메소드를 사용하여 출력 매개변수 값을 가져옵니다.

  1. 요약

MySQL 저장 프로시저는 코드 재사용성을 향상시키고, 데이터 보안을 강화하며, 성능을 향상시키고 데이터베이스 상호 작용을 줄일 수 있는 매우 실용적인 기능입니다. PHP 코드에서 MySQL 저장 프로시저를 호출하는 것도 매우 쉽습니다. MySQLi 확장이나 PDO 확장에서 제공하는 CALL 문만 사용하면 됩니다. 이 기사가 MySQL 저장 프로시저와 PHP의 저장 프로시저 호출을 더 잘 이해하는 데 도움이 되기를 바랍니다.

위 내용은 PHP에서 MySQL 저장 프로시저를 호출하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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