我有一个存储过程,将代码保存在varchar变量中,我需要执行此代码。
程序:
delimiter $$
create procedure eixos_caminhao (in numeroEixos int)
begin
set @comando := 'select classe, velocidade, date(data) as data,
pesoEixo1, pesoEixo2';
if (numeroEixos > 2) set @comando:= concat(@comando, ', pesoEixo3');
if (numeroEixos > 3) set @comando:= concat(@comando, ', pesoEixo4');
if (numeroEixos > 4) set @comando:= concat(@comando, ', pesoEixo5');
if (numeroEixos > 5) set @comando:= concat(@comando, ', pesoEixo6');
if (numeroEixos > 6) set @comando:= concat(@comando, ', pesoEixo7');
if (numeroEixos > 7) set @comando:= concat(@comando, ', pesoEixo8');
if (numeroEixos > 8) set @comando:= concat(@comando, ', pesoEixo9');
set @comando:= concat(@comando, ' from tb_vbv');
end;
delimiter;
现在,如何在varchar中执行此Sql?
答案 0 :(得分:1)
您具有EXECUTE(@var)
功能。
EXECUTE(@command);