mysql使用allowmultiqueries会出啥问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql使用allowmultiqueries会出啥问题相关的知识,希望对你有一定的参考价值。

参考技术A Jdbc Url 中设置allowMultiQueries=true时,可以允许一次执行多条sql(通过分号分割),如下所示:
String url = "jdbc:mysql://localhost:3306?allowMultiQueries=true";
String sql = "select 'hello';select 'world'";
stmt.execute(sql);本回答被提问者采纳

mysql的jdbc.url携带allowMultiQueries=true参数的作用及其原理

如下配置

jdbc.url=jdbc:mysql://127.0.0.1:3306/chubb_2?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true

 

allowMultiQueries=true参数的作用:

①可以在sql语句后携带分号,实现多语句执行。

如:mybatis的mapper.xml文件

<select id="getAll" resultType="com.xxx.XBean">
    SELECT * FROM x;
</select>

 

②可以执行批处理,同时发出多个SQL语句。

<update id="batchUpdate"  parameterType="java.util.List">
   <foreach collection="devRelDOList" item="devRelDO" separator=";" open="" close="" >
       UPDATE
           dev_rel
       <set>
           gmt_modified=now(),
           pro_id = #{devRelDO.proId},
           dev_id = #{devRelDO.devId},
           group_id = #{devRelDO.groupId},
           own_type = #{devRelDO.ownType}
       </set>
       <where>
           id = #{devRelDO.id}
       </where>
   </foreach>
</update>

 

 

底层原理:

 

 

 

参考:

https://my.oschina.net/zhuguowei/blog/411853

https://blog.csdn.net/xuezhezhishen/article/details/78692698

 https://my.oschina.net/freedemon/blog/1813816

https://www.cnblogs.com/jeffen/p/6038261.html

https://blog.csdn.net/qq_26718271/article/details/65629805

 

以上是关于mysql使用allowmultiqueries会出啥问题的主要内容,如果未能解决你的问题,请参考以下文章

Qt 连接 MySQL 时,怎么把 allowMultiQueries=true 参数加入

Mysql批量更新的一个坑-&allowMultiQueries=true允许批量更新

Mysql批量更新的一个坑-&allowMultiQueries=true允许批量更新

Jdbc Url 设置allowMultiQueries为true和false时底层处理机制研究

170829mybatis使用oracle和mybatis中批量更新

使用jmeter执行多条sql语句