Yii Framework Forum: Хранимые Процедуры. Вывод Out-Параметров - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Хранимые Процедуры. Вывод Out-Параметров Rate Topic: -----

#1 User is offline   marinovdf 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 18-January 13

Posted 01 February 2013 - 08:58 AM

Делаю сайт, который коннектится к MSSQL-серверу. Прием всех данных реализован через хранимые процедуры. Данные получаю успешно, но вот OUT-параметры никак не могу прочесть. Искал по форуму, но рабочего решения не нашел. Не исключено, что что-то не так пишу. Может кто сталкивался? Ниже пример кода:
 public function sampleMethod()
    {
        $sql = 'EXECUTE SampleProcedure
                @ReturnCode =:ReturnCode,
                @Message =:Message';

        $command = $this->connection->createCommand($sql);

        $command->bindParam(':ReturnCode', $ReturnCode, PDO::PARAM_STR | PDO::PARAM_INPUT_OUTPUT, 1);
        $command->bindParam(':Message', $Message, PDO::PARAM_STR | PDO::PARAM_INPUT_OUTPUT, 250);

        $result = $command->queryAll();

       //ReturnCode и Message всегда null
       if($ReturnCode == 0)
                 echo $Message;

        return $result;
    }
 

0

#2 User is offline   Charger 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 317
  • Joined: 03-September 11

Posted 01 February 2013 - 09:01 AM

В PostgreSQL что бы получить данные из хранимой процедуры использовалось "SELECT * FROM SampleProc()" может быть тут можно подобным образом?
0

#3 User is offline   marinovdf 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 18-January 13

Posted 01 February 2013 - 09:28 AM

View PostCharger, on 01 February 2013 - 09:01 AM, said:

В PostgreSQL что бы получить данные из хранимой процедуры использовалось "SELECT * FROM SampleProc()" может быть тут можно подобным образом?

Боюсь, что этот вариант не подходит
0

#4 User is offline   yan 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 22
  • Joined: 29-March 11
  • Location:Russia, Ufa

Posted 01 February 2013 - 02:06 PM

View Postmarinovdf, on 01 February 2013 - 08:58 AM, said:

Делаю сайт, который коннектится к MSSQL-серверу. Прием всех данных реализован через хранимые процедуры. Данные получаю успешно, но вот OUT-параметры никак не могу прочесть. Искал по форуму, но рабочего решения не нашел. Не исключено, что что-то не так пишу. Может кто сталкивался? Ниже пример кода:
 
 


все таки покажите код хранимой тоже, как я уже сказал приведенный пхп вполне рабочий, несмотря даже на то, что достачно просто :Message а не @Message=:Message и не $command->queryAll(), а $command->execute();
0

#5 User is offline   marinovdf 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 18-January 13

Posted 01 February 2013 - 04:50 PM

View Postyan, on 01 February 2013 - 02:06 PM, said:

все таки покажите код хранимой тоже, как я уже сказал приведенный пхп вполне рабочий, несмотря даже на то, что достачно просто :Message а не @Message=:Message и не $command->queryAll(), а $command->execute();

yan, приятно Вас снова "слышать". Да, код пхп рабочий, так как я успешно получаю данные. Здесь я использую queryAll(), потому что, процедура подразумевает выборку данных. К сожалению, ее код я не могу предоставить, так как, процедурами занимаюсь не я и у меня нет к ней доступа. Прекрасно понимаю, что телепатов здесь нет :)
0

#6 User is offline   yan 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 22
  • Joined: 29-March 11
  • Location:Russia, Ufa

Posted 02 February 2013 - 03:14 AM

View Postmarinovdf, on 01 February 2013 - 04:50 PM, said:

yan, приятно Вас снова "слышать". Да, код пхп рабочий, так как я успешно получаю данные. Здесь я использую queryAll(), потому что, процедура подразумевает выборку данных. К сожалению, ее код я не могу предоставить, так как, процедурами занимаюсь не я и у меня нет к ней доступа. Прекрасно понимаю, что телепатов здесь нет :)

мне честно говоря даже любопытно - с чего это не работает то, у мне сайт получает и изменяет данные через несколько десятков процедур - все отлично работает, в процедурах тоже все элементарно, вряд ли можно что-то испортить
CREATE PROCEDURE [dbo].[test]
	@i		int out
AS
BEGIN
	set @i=111;
END

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users