CREATE DEFINER=`root`@`localhost` PROCEDURE `test_dynamic_sql`() BEGIN declare id int; declare phu varchar(45); set id = 666; set phu = 'test'; set @table_name:= 'test_tbl'; -- set @id:=id; -- set @phu:=phu; set @sql:= concat('UPDATE ', @table_name, ' SET `id` =''',id,''' WHERE TRIM(`Reporting_PHU`) =''',phu,''';'); PREPARE dynamic_statement FROM @sql; EXECUTE dynamic_statement; DEALLOCATE PREPARE dynamic_statement; END