2013-02-11 43 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

相关问题