MySQL: как установить локальную переменную, используя select в хранимой процедуре? - PullRequest
0 голосов
/ 02 февраля 2019

Похоже, это глупый вопрос :), но я не могу найти его где-либо.

Мне нужно установить количество локальных переменных в sproc из оператора select.

Это работает из окна запроса:

select  @value1 := value1, @value2 := value2 from test_table limit 1; 
select  @value1, @value2;

Но когда я пытаюсь сделать подобное в хранимой процедуре, я получаю: Ошибка SQL (1064): у вас есть ошибка вВаш синтаксис SQL ...

BEGIN

    declare p_value1 varchar(50); 
    declare p_value2 varchar(50); 
    select  p_value1 := value1, p_value2 := value2 from test_table limit 1; 

END

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 02 февраля 2019

Используйте синтаксис SELECT ... INTO :

BEGIN

    declare p_value1 varchar(50); 
    declare p_value2 varchar(50); 
    select value1, value2 into p_value1, p_value2 from test_table limit 1; 

END
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...