mysql

mysql의 프로시져호출시 에러(procedure can't return a result set in the given context)

은둔한량 2017. 2. 28. 11:33
반응형

php에서 mysql과 연결을 할때

mysql_connect( host, database, user, password);

로 하는경우가 많은데로 이렇게할 경우 프로시져를 호출하면 다음과 같은 에러메시지를 볼 수 있다.

PROCEDURE XXX.XXX can't return a result set in the given context

프로시져를 호출할때는 다음과 같이 연결을 해야 에러가 나지 않는다..

mysql_connect( host, database, user, password, TRUE, 131074);

 

역시 CI인 경우 프로시져를 Call할때 에러가 나는 경우는

Error Number: 1312

PROCEDURE xone_ktk_new.sp_p_pps1123_30_Search can't return a result set in the given context

CALL xone_ktk_new.sp_p_pps1123_30_Search('30','30','','','')

Filename: models/Erp_test_model.php

Line Number: 16

 

해결방법 :

system/database/drivers/mysql/mysql_driver.php 파일에서

 /**
  * Non-persistent database connection
  *
  * @param bool $persistent
  * @return resource
  */
 public function db_connect($persistent = FALSE)
 {

$client_flags = 131074; // PROCEDURE 사용을 위해

 

 

반응형