Chyba není ve vašem postupu. Chyba je ve vašem dotazu - vrací více než jeden řádek, ale nemůžete nastavit více výsledků do skalární hodnoty 'emp1'.
Dotaz byste měli omezit tak, aby vracel jeden řádek.
Jak načíst více řádků z uložené procedury v mysql?
- Plán A :Vyplňte další tabulku, může to být dočasná tabulka.
- Plán B :Stačí provést příkaz SELECT bez klauzule INTO z procedury; pak jste mohli číst data-set z aplikace (c#, PHP+mysqli,...)
- Plán C :Tento postup nepoužívejte, pouze spusťte dotaz SELECT.