2013-02-11 57 views
0

我需要的PHP Zend框架來使用MySQL功能是否有可能在zend框架中使用mysql函數(不是內置的)?

的情況如下:

有一個連接這是在Zend的framework.I執行的查詢需要從

得到一個輸出MySQL的功能。例如,下面是一個MySQL的函數

CREATE FUNCTION `junk`.`MakeDateList` 
    -> (
    -> BeginDate DATE, 
    -> EndDate DATE, 
    -> InclusionList VARCHAR(20) 
    ->) 
    -> RETURNS VARCHAR(4096) 
    -> DETERMINISTIC 
    -> BEGIN 
    -> DECLARE RunningDate DATE; 
    -> DECLARE rv VARCHAR(4096); 
    -> DECLARE comma CHAR(1); 
    -> DECLARE IncList,DOWValue VARCHAR(20); 
    -> DECLARE OK_To_Add INT; 
    -> 
    -> SET IncList = CONCAT(',',InclusionList,','); 
    -> SET comma = ''; 
    -> SET rv = ''; 
    -> SET RunningDate = BeginDate; 
    -> WHILE RunningDate <= EndDate DO 
    ->  SET OK_To_Add = 0; 
    ->  SET DOWValue = CONCAT(',',DAYOFWEEK(RunningDate),','); 
    ->  IF LOCATE(DOWValue,IncList) > 0 THEN 
    ->  SET OK_To_Add = 1; 
    ->  END IF; 
    ->  IF OK_To_Add = 1 THEN 
    ->  SET rv = CONCAT(rv,comma,RunningDate); 
    ->  SET comma = ','; 
    ->  END IF; 
    ->  SET RunningDate = RunningDate + INTERVAL 1 DAY; 
    -> END WHILE; 
    -> RETURN rv; 
    -> END $$ 

我需要在我加入Zend框架的功能,利用這一點,使所希望的輸出應該

是一個新列

可有什麼辦法或方法提前

感謝

回答

3

你嘗試過嗎?

Zend_Db::factory('Pdo_Mysql', array(
    'host'    => '127.0.0.1', 
    'username'   => 'webuser', 
    'password'   => 'xxxxxxxx', 
    'dbname'   => 'test', 
    'adapterNamespace' => 'MyProject_Db_Adapter' 
))->query('CALL MY_PROCEDURE(?, ?, ?)', array($beginDate, $endDate, $inclusionList)) 
->fetchAll(); 
+0

已更新爲參數 – BattleBit 2013-02-11 14:24:23

+0

謝謝你我要檢查它 – 2013-02-13 09:37:17

+0

謝謝你的工作, – 2013-03-02 04:15:41

相關問題