mysql数据库表字段使用DESC等关键字报错及解决方法
<!-- desc是MySQL数据库的关键字,作为字段名直接使用会报错 -->
<sql id="Base_Column"> id,mol,ip,port,name,t.desc,maxAc,maxI,minI,maxW,status
</sql> <!-- 查询列表 --> <select id="getTht" resultMap="BaseResultMap" parameterType="ThigDO"> select <include refid="Base_Column"/> from t_sys_thorfd t order by status desc <include refid="where"/> </select>
一个简单的查询语句一直在desc的地方报错,一开始以为是
order by status desc 存在错误,检查多遍,怀疑是desc这个字段名惹的祸,经过验证果然,desc常用来作为字段名标识 描述 含义
解决方法就是采用上述曲线救国方式,或者更换字段名。
还有一种方法就是在要用到关键字的地方加反引号标识,例如
<if test="desc != null and desc!='' ">
`desc`,
</if>