博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis批量update(mysql)
阅读量:5813 次
发布时间:2019-06-18

本文共 2541 字,大约阅读时间需要 8 分钟。

批量插入:

insert into testTable (id,content) values
( #{item.id}, #{item.content}, )

Mapper文件中的写法

UPDATE test_table SET c_a = #{item.ca}, c_b = #{item.cb} WHERE id = #{item.id}

这样写总是报错,调试了很长时间也没找到问题原因

最后找到这里http://my.oschina.net/jsonavaj/blog/265112 找到了答案

 

数据库的链接必须加上但是数据库连接必须加上 allowMultiQueries=true

url="jdbc:mysql://localhost:3306/testDatabase?allowMultiQueries=true" />

http://www.cnblogs.com/modprobe/p/4683274.html

利用MyBatis对数据库进行DDL(create table,drop table等等)操作

【具体代码】
1、mapper接口文件内容如下

/** * 执行备份数据库相关表的Mapper */public interface BackupDataMapper {        /**     * 修改数据库的表名字     * @param originalTableName     * @param newTableName     * @return     */    int alterTableName(@Param("originalTableName") String originalTableName,            @Param("newTableName") String newTableName);        /**     * truncate指定数据库表的数据     * @param tableName     * @return     */    int truncateTable(@Param("tableName") String tableName);        /**     * 根据传入的表明,创建新的表并且将原表的数据插入到新的Occur表中     * @param newTableName     * @param originalTableName     */    void createNewTableAndInsertData(@Param("newTableName") String newTableName,            @Param("originalTableName") String originalTableName);        /**     * 统计某张表中的总数据条数。     * @param tableName     * @return 指定表中的总记录条数。     */    int getRecordCount(@Param("tableName") String tableName);        /**     * 获得当前数据库的名字     * @return     */    String getCurDataBaseName();        /**     * 从指定数据库中,查询是否存在某张表     * @param dataBaseName     * @param tableName     * @return     */    String isTargetTableExistInDB(@Param("dataBaseName") String dataBaseName,             @Param("tableName") String tableName);}

2、mapper.xml文件内容如下

alter table ${originalTableName} rename ${newTableName}
truncate table ${tableName}
create table ${newTableName} as select * from ${originalTableName}

3、注意点
在传入“表名”作为参数时,一定要使用“${tableName}”的格式,而不能使用“#{tableName}”的格式。因为表名是sql语法要求的一部分,而不是参数

http://www.cnblogs.com/zjrodger/p/5567085.html

转载于:https://www.cnblogs.com/softidea/p/5775546.html

你可能感兴趣的文章
net 和Mono 构建的HTTP服务框架
查看>>
Windows 下最佳的 C++ 开发的 IDE 是什么?
查看>>
软件工程师成长为架构师必备的十项技能
查看>>
python 异常
查看>>
百度账号注销
查看>>
jquery画图插件jPainter
查看>>
真正努力的人,从来不焦虑
查看>>
Lua语言特色
查看>>
vscode忽略node_module
查看>>
C#泛型-什么是泛型
查看>>
regsvr32.exe进程注册dll文件
查看>>
C# 单机Window 程序 sqlite 数据库实现
查看>>
JavaScript一些函数
查看>>
国务院关于积极推进“互联网+”行动的指导意见
查看>>
Matrix Factorization, Algorithms, Applications, and Avaliable packages
查看>>
图像配准转换
查看>>
mysql-This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME 错误解决
查看>>
BIEE Demo(RPD创建 + 分析 +仪表盘 )
查看>>
Cocos2dx 3.0开发环境的搭建--Eclipse建立在Android工程
查看>>
iOS人脸识别核心代码(备用)
查看>>