错误写法:
@Select("SELECT COUNT(1) FROM #{tablename} ; ")
int countByDataType(@Param("tablename") String tablename);
其中#{tablename}被引入sql语句后是一个带引号的字符串,最终执行的sql语句将会是SELECT COUNT(1) FROM 'xxxxx' ;表名被双引号包裹,会报错;
正确写法应该是将#改为$:
@Select("SELECT COUNT(1) FROM ${tablename} ; ")
int countByDataType(@Param("tablename") String tablename);