Mysql Mybatis 使用相关知识
Posted 代码那些事
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql Mybatis 使用相关知识相关的知识,希望对你有一定的参考价值。
You can\'t specify target table \'表名\' for update in FROM clause (来源)
翻译为:不能先select出同一表中的某些值,再update这个表(在同一语句中)
解决办法:将SELECT出的结果再通过中间表SELECT一遍
UPDATE result
SET StudentResult=StudentResult+5
WHERE StudentResult in (
(SELECT res.StudentResult
FROM student stu JOIN result res on res.StudentNo=res.StudentNo
where res.StudentResult=53 and stu.GradeId=(SELECT GradeId FROM grade WHERE GradeName=\'大一\')
)
)
需要改为
UPDATE result
SET StudentResult=StudentResult+5
WHERE StudentResult in (
SELECT a.StudentResult from
(SELECT res.StudentResult
FROM student stu JOIN result res on res.StudentNo=res.StudentNo
where res.StudentResult=53 and stu.GradeId=(SELECT GradeId FROM grade WHERE GradeName=\'大一\')
) AS a
)
mysql 类型为 bit 时的操作
UPDATE `xxx` SET `xxx`=b\'0\' WHERE `id`=1;
mybatis异常:The content of elements must consist of well-formed character data or markup的解决方法 (来源)
不是格式良好的xml,也就是我们的书写格式有误,常见的就是 < 符号 需要转义
select * from t where time > #{endTime} <![CDATA[ and time < #{startTime} ]]>
mybatisplus 使用 script 解析list
@Select({
"<script>",
"update xx set vv= #{vv} where id in " ,
"<foreach collection=\'idList\' item=\'data\' open=\'(\' separator=\',\' close=\')\'>",
"#{data}" ,
"</foreach>" ,
" and cc<![CDATA[ <> #{cc} ]]>",
"</script>"})
以上是关于Mysql Mybatis 使用相关知识的主要内容,如果未能解决你的问题,请参考以下文章