2016-09-08 2 views
0

Моя кредитная таблица имеет следующие данныеКак изменить локальную переменную в mysql, сохраняя ссылку на себя?

Id 
1 
2 
3 

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

Я сделал это с помощью переменной сессии следующим образом

delimiter // 
create procedure xxx() 
begin 
declare var int default 200; 
set @t=100; 
select @t:[email protected] as result from credit; 

end // 

выше хранимая процедура возвращает следующий результат

result 
99 
97 
94 

Мой вопрос заключается в том, чтобы достигнуть того же самого набора результатов с использованием MySQL локального переменная.

ответ

0

Оставляя в стороне utlity применения такой функции для seqientially выделенных целых и тот факт, что в отсутствие приказа пункта, вы не можете гарантировать последовательное поведение, вы пробовали ....

delimiter // 
create procedure xxx() 
begin 
    declare var int default 200; 
    set @t=100; 
    UPDATE credit SET credit.result=(@t:[email protected]) 
    ORDER BY id; 
end // 

(я нет, так что не guaranteees здесь)

+0

мой вопрос, как использовать локальную переменную как переменную сеанса то, что вы описали я не понимаю – Man

Смежные вопросы