{{wikiTitle}}
适配MySql 8
目录:
MySQL8适配MySQL5
我们Java版单商户默认mysql是5.x版本的,要想适配8.x版本的话,需要有以下几点要注意修改:
一、修改maven的依赖包,由原来的5.x,修改成8.x
二、配置文件修改数据库驱动:com.mysql.cj.jdbc.Driver
三、有些sql语句,原来mysql5.x 支持的,但是在 mysql8.x 环境下需要修改(带有group by 语句的)
//wrapper.select("id");
wrapper.select(" ANY_VALUE(id) AS id ");
按照如图所示:依次修改
以下两处,考虑到复杂嵌套查询,直接新建查询方法,改用原生sql
<select id="selectSizePink" resultType="com.zbkj.common.model.combination.StorePink">
SELECT
p.id, p.uid, p.order_id, p.order_id_key, p.total_num, p.total_price,
p.cid, p.pid, p.people, p.price, p.add_time, p.stop_time, p.k_id,
p.is_tpl, p.is_refund, p.status, p.nickname, p.avatar, p.is_virtual
FROM eb_store_pink p
INNER JOIN (
SELECT uid, MAX(id) AS max_id
FROM eb_store_pink
WHERE is_refund = 'false' AND status IN (1, 2)
GROUP BY uid
) AS tmp ON p.uid = tmp.uid AND p.id = tmp.max_id
ORDER BY p.id DESC
LIMIT #{size};
</select>
<select id="selectHeaderList" resultType="com.zbkj.common.model.bargain.StoreBargainUser">
SELECT
p.id, p.uid, p.bargain_id, p.bargain_price_min,
p.bargain_price, p.price, p.status, p.add_time, p.is_del
FROM eb_store_bargain_user p
INNER JOIN (
SELECT uid, MAX(id) AS max_id
FROM eb_store_bargain_user
WHERE status = 3 AND is_del = FALSE
GROUP BY uid
) AS tmp ON p.uid = tmp.uid AND p.id = tmp.max_id
ORDER BY p.id DESC
LIMIT 10
</select>




评论({{cateWiki.comment_num}})
{{commentWhere.order ? '评论从旧到新':'评论从新到旧'}}
{{cateWiki.page_view_num}}人看过该文档


评论(0)
{{commentWhere.order ? '评论从旧到新':'评论从新到旧'}}
702人看过该文档




{{item.user ? item.user.nickname : ''}} (自评)
{{item.content}}
{{item.create_time}} 删除




搜索结果
为您找到{{wikiCount}}条结果
{{item.page_view_num}}
{{item.like ? item.like.like_num : 0}}
{{item.comment ? item.comment.comment_num : 0}}
位置:{{path.name}} {{(i+1) == item.catalogue.path_data.length ? '':'/'}}


