Een SP kan niet worden geoptimaliseerd met een dynamische tabelnaam, dus veel DB's, inclusief MySQL, staan niet toe dat tabelnamen dynamisch worden opgegeven.
Een manier om dit te omzeilen is om dynamische SQL te gebruiken.
CREATE DEFINER=`root`@`localhost` PROCEDURE `test_proc`(IN serviceName VARCHAR(10),IN newsInfoTable VARCHAR(100))
BEGIN
SET @sql = CONCAT('SELECT COUNT(*) FROM ',newsInfoTable,' WHERE newsServiceName=?;');
PREPARE s1 from @sql;
SET @paramA = serviceName;
EXECUTE s1 USING @paramA;
END$$