0
我使用adodb5來調用這個存儲過程,但MySQL不明白$ sealID是一個字符串。無法傳遞字符串到MySQL存儲過程使用adodb
$db = NewADOConnection('mysql://'.DB_USER.':'.DB_PASS.'@'.DB_SERVER.'/'.DB_NAME);
$sql = "CALL GetSeal($userID, $sealID, @result)";
$r = $db->Execute($sql);
當我從shell運行這個PHP。
TestGetSealProc.php 3155011 ZZZZNLJSAYGZECWY
MySQL的報道:
Unknown column 'ZZZZNLJSAYGZECWY' in 'field list'
ZZZZNLJSAYGZECWY必須被理解爲一個字符串,但一列。如何解決它?
更新:我的存儲過程的第一部分。
CREATE DEFINER=`root`@`localhost` PROCEDURE `GetSeal`(IN userID INT, IN sealID char(16), OUT result INT)
BEGIN
DECLARE imageCnt INT;
DECLARE pointCnt INT;
DECLARE puriCode varchar(256);
DECLARE newImgID INT;
....
DECLARE c_data CURSOR FOR
SELECT TELEPHONE_NUMBER, IMG_FILENAME, SELECTION_FLG, PHOTOGRAPH_DATE, SEND_DATE
FROM re_photograph_imgs
WHERE SEAL_NUMBER = sealID
AND IMG_FILENAME IS NOT NULL
AND IMG_FILENAME != "";
......................
GetSeal的外觀如何? – ajreal