CREATE DEFINER=`root`@`localhost` PROCEDURE `table_data_count`(IN `tableName` varchar(200),IN `whereStr` varchar(200),IN `startDate` VARCHAR(200),IN `endDate` VARCHAR(200),OUT count_num tinyint)
READS SQL DATA
BEGIN
DECLARE creatSql text ;
set creatSql = CONCAT('SELECT COUNT(1) INTO @count_num from ',tableName);
SET @SQL = CONCAT(creatSql);
PREPARE stmt FROM @SQL ;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
set count_num = @count_num;
INSERT INTO table_data_count
(count,table_name,start_date,end_date)
value
(count_num,tableName,startDate,endDate);
END
@count_num 必须加@,
set count_num = @count_num 赋值给输出变量