>  기사  >  백엔드 개발  >  PHP 코드에서 MySQL 저장 프로시저를 호출하는 방법은 무엇입니까?

PHP 코드에서 MySQL 저장 프로시저를 호출하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-07 06:10:02535검색

How to Call a MySQL Stored Procedure from PHP Code?

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

배경:
PHP 코드에서 MySQL 저장 프로시저 호출 PHP 코드를 사용하면 복잡한 데이터베이스 작업을 효과적으로 실행할 수 있습니다. 이 문서에서는 MySQL 버전 4.1.11(클라이언트) 및 5.0.45(서버)를 사용하여 PHP에서 저장 프로시저를 호출하는 가장 좋은 접근 방식을 보여줍니다.

저장 프로시저 정의:
The 예제 저장 프로시저인 getTreeNodeName은 해당 ID가 지정된 노드의 이름을 반환합니다.

DELIMITER $$

DROP FUNCTION IF EXISTS `getNodeName` $$
CREATE FUNCTION `getTreeNodeName`(`nid` int) RETURNS varchar(25) CHARSET utf8
BEGIN
 DECLARE nodeName varchar(25);
 SELECT name into nodeName FROM tree
 WHERE id = nid;
 RETURN nodeName;
END $$

DELIMITER ;

저장 프로시저를 호출하는 PHP 코드:

getTreeNodeName 프로시저를 호출하려면, 더 이상 사용되지 않는 mysql 확장 대신 mysqli 확장을 사용할 수 있습니다. PHP 코드는 다음과 같습니다.

<?php 

// enable error reporting
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

// connect to database
$connection = mysqli_connect("hostname", "user", "password", "db", "port");

// run the stored procedure
$result = mysqli_query($connection, "CALL getTreeNodeName");

// loop the result set
while ($row = mysqli_fetch_array($result)) {
  echo $row[0] . " - " . $row[1]; // replace with appropriate column indices
}

참고:
많은 사용자가 이전 mysql_connect, mysql_query 및 mysql_fetch_array 함수 사용과 관련된 문제를 보고했습니다. 대신 mysqli 확장자를 사용하는 것이 좋습니다.

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

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