Вызов хранимой процедуры MySQL и отображение ее данных в CAKEStack Overflow

Я хочу вызвать мою хранимую процедуру, которая принимает только один целочисленный входной параметр и возвращает несколько строк в рамках CakePHP.

Хранимая процедура:

PROCEDURE `Salary`(IN sysid int )
BEGIN
SELECT name, lastName, Salary, Month From SalaryData
where Userid = sysid;
END

Model.PHP:

<?php
class SalaryModel extends AppModel
{
public function sProcedure($testId)
{
$result=$this->query("CALL Salary($testId);");
return $result;
}
}?>

Мой код контроллера:

public function Procdata($testId) {
$result=$this->Systemstate->sProcedure($testId);
}

Теперь, может кто-нибудь подскажет, как отобразить содержание запроса в «View.ctp» ??

Я надеюсь, что моя модель верна.

заранее спасибо

0

Решение

Хранимая процедура MySQL обычно не возвращает некоторый результат.
Вам нужно разработать FUNCTION вместо того, чтобы возвращать какое-то значение.
Прочитайте больше Вот.

1

Другие решения

Существуют различные методы для вызова хранимых процедур в cakephp. но лучший способ — выполнить его как запрос, а не запечь как модель,
потому что до моего поиска нет способа построить или запечь сложные хранимые процедуры.

Итак, так я решил свою проблему:

Мой код контроллера:

    public function Procdata($testId) {
$result=$this->Systemstate->sProcedure($testId);
$this->set('data',$result);
}

Мой Дисплей Раздел View.CTP

   print_r($data);
0

По вопросам рекламы [email protected]