我想創建一個循環裏面的過程,但是當我打電話時它只顯示第一個記錄,不要interate。MYSQL循環只顯示第一個記錄
delimiter //
create procedure load_foo_test_data()
begin
declare v_max int unsigned default 10;
declare v_counter int unsigned default 1;
select COUNT(*) into v_max FROM emp;
start transaction;
while v_counter < v_max do
select * from emp where emp_id = v_counter;
set v_counter=v_counter+1;
end while;
commit;
end
//
delimiter ;
當我打電話的過程中,它顯示我只是第一個記錄(ID爲1)。
我試過「select v_counter」,只顯示1。
並嘗試與循環,而不是同一件事情。
我正在使用mysql中的續集親5.5
謝謝!
爲什麼環路通過 '開始交易/提交' 包圍?不涉及你的錯誤(可能不是),但看起來很奇怪。 – ethrbunny
事實是,我只用循環(而不是交易/提交)和我有同樣的問題。尋找一個解決方案,我發現這個例子(原來有「插入」而不是「選擇」),但不解決第一個記錄的問題。 – Vertig0
如果您手動執行多個選擇,您是否可以編程處理所有結果集?你爲什麼要做多個選擇而不是一個? –