sql >> Databasteknik >  >> RDS >> Mysql

Dynamiska variabelnamn i MySQL

create procedure `eval`( in param text )                                                                                                                   
begin 
    set @sql = param; 
    prepare stmt from @sql; 
    execute stmt; 
    deallocate prepare stmt; 
end

Anropa proceduren call tests.eval('set @ABC = 120') och i den aktuella sessionen kan du komma åt variabeln @ABC

call tests.eval('set @ABC = 120');
select @ABC;

Källa



  1. MySQL-fråga för att hämta data med kolumnnamn

  2. Är MySQL-logikutvärdering lat/kortsluter i JOIN-klausulen?

  3. Gridview finns inte i det aktuella sammanhanget

  4. Hur utlöser man mysql-händelsen efter en tidsperiod?