Ibatis批量处理
1.插入
<insert id="insTable" resultClass="int">
INSERT INTO [dbo].[table]
([Id]
,[FId],[IsDel],[CreateTime]
)
VALUES
<iterate conjunction="," open="" close="">
(#[].Id#
,#[].FId# ,
,GETDATE()
)
</iterate>
</insert>
2.读取
<select id="queryTable" resultMap="Table" parameterClass="List">
select Id, FId, CreateTime
from Table (nolock) where IsDel=1 and [Id] in
<iterate open="(" close=")" conjunction=",">
#[]#
</iterate>
</select>
3.修改
<update id="updateTable" parameterClass="list">
begin
<iterate conjunction="">
update TABLE
set
Fid=#[].FId#
where id = #[].Id#;
</iterate>
end;
</update>
var tables = new List<Table>()
{
{new Table() {Id = , FId = ""}},
{new Table() {Id = , FId = ""}},
};
this.mapper.Update("updateTable", tables);
4.删除
<delete id="delTable" parameterClass="List">
delete
from TABLE
where id in
<iterate conjunction="," open="(" close=")">
#[]#
</iterate>
</delete>
var ids=new List<int>(){,,};
this.mapper.Delete("delTable", ids);
5.类里字段列表插入(注意iterate 里多了一个property )
<insert id="insSaleOrderDetails" parameterClass="SaleOrderDetailModel" resultClass="int">
INSERT INTO [dbo].[SaleDetail]
(
[OrderId]
,[PId]
,[Price]
,[Quantity]
,[Amount]
,[CreateDate]
,[CreateTime]
,[Creator]
,[IsDel]
)
VALUES
<iterate conjunction="," open="" close="" property="Details">
(#SaleId#
,#Details[].PId#
,#Details[].Price#
,#Details[].Quantity#
,#Details[].Amount#
,getdate()
,getdate()
,#Creator#
,0
)
</iterate> </insert>
6.ibatis的比较运算
<isEqual> 相等。
<isNotEqual> 不等。
<isGreaterThan> 大于
<isGreaterEqual> 大于等于
<isLessThan> 小于
<isLessEqual> 小于等于 <isEqual property="Status" compareValue="1">
and Status>0
</isEqual> <isEqual property="sort_onlinetime" compareValue="asc">
order by u.online_time asc
</isEqual>
7.直接传入一个List
<!--列表查询需显示内容-->
<select id ="qryDataList" parameterClass="list" resultClass="DataModel">
select *
from DataConfig a (NOLOCK) join data b (NOLOCK)
on a.dataid=b.id
where a.isdel= and b.isdel= <isNotNull prepend="AND">
ModuleId in
<iterate conjunction="," open="(" close=")">
#[]#
</iterate> </isNotNull>
</select>
Ibatis批量处理的更多相关文章
- ibatis 批量更新(二)
1.情景展示 oracle数据库中,需要根据指定字段内容调用加密程序后,根据主键id进行更新其对应的字段mindex_id的值: 加密通过Java实现,然后通过Java对其进行更新: Java使用 ...
- IBatis批量插入数据
IBatis插入注意,数据量比较多的花,需要分批插入,策略是dao里面控制插入批次,mapper里面批量插入即可 @Override public Long insertBatch(List<W ...
- ibatis 批量更新(一)
1.4.2.3 批量修改 支持单个动态更新.批量动态更新 <update id="updateCONSULT_SCHEDULEDynamic" parameterClas ...
- ibatis 批量插入
ibatis 批量插入 CreationTime--2018年7月2日10点21分 Author:Marydon 1.说明 基于oracle的sql语句 2.主键id有默认值,比如:sys_gui ...
- Java使用iBatis批量插入数据到Oracle数据库
Java使用iBatis批量插入数据到Oracle数据库 因为我们的数据跨库(mysql,oracle),单独取数据的话需要遍历好多遍,所以就想着先从mysql数据库中取出来的数据然后在oracle数 ...
- mysql+ibatis 批量插入
述:相比oracle批量插入,mysql批量插入就简单的多了,mysql支持values后面跟多条数据,进行批量插入,并且主键可以自增,不像oracle会遇到序列问题. 1.建表 CREATE TAB ...
- oracle+ibatis 批量插入-支持序列自增
首先请先看我前面一篇帖子了解oracle批量插入的sql:[oracle 批量插入-支持序列自增] 我用的ibatis2.0,sqlMap文件引入的标签如下: <!DOCTYPE sqlMap ...
- ibatis 批量插入oracle总结
1. 使用批量插入最先想到如下的插入语句 insert into a (id,name) values('','') ,('','') 但是 oracle 并不支持这种写法 然后查询得知可以使用如下写 ...
- IBatis 批量插入数据
sql语句 <!--批量插入待收流水--> <insert id="BatchInsertOrder" parameterClass="ArrayLis ...
随机推荐
- BT下载的原理 和疑问
我心中有几个疑问,同时也搜索了点素材,肯能对理解问题有帮助. BT下载,即P2P下载,是一种不需要中心化服务器的下载,实现原理是,每个客户端在下载的时候也作为服务器. 我的疑问是,P2P各个节点是如何 ...
- 2.sql分类
SQL DML 和 DDL 可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL). SQL (结构化查询语言)是用于执行查询的语法.但是 SQL 语言也包含用于更新.插 ...
- Python中常用模块二
一.hashlib (加密) hashlib:提供摘要算法的模块 1.正常的md5算法 import hashlib # 提供摘要算法的模块 md5 = hashlib.md5() md5.upd ...
- Js 正则获取Html元素
var html = $("#summaryTemplate").html(); var imageMath = /<img [^<,>]*(?=target-t ...
- web集群时session同步的3种方法
在做了web集群后,你肯定会首先考虑session同步问题,因为通过负载均衡后,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,一个登录用户,一会是登录状态,一会又不是 ...
- 在C#中使用科大讯飞Web API进行语音合成
最近工作中需要用到讯飞语音合成接口,网上看了下基本都是Java,PHP,Python版本的,正好补上C# 版本,代码比较简单. 首先在讯飞开放平台上创建一个WebApi项目,取到APPID与APIK ...
- angular 守卫路由
import { NgModule } from '@angular/core'; import { Routes, RouterModule } from '@angular/router'; im ...
- 316. Remove Duplicate Letters (accumulate -> count of the difference elements in a vector)
Given a string which contains only lowercase letters, remove duplicate letters so that every letter ...
- git配置本地环境(phpstudy/tortoisegit/git等)
1.下载安装phpstudy 2.下载安装git 下载地址:https://git-scm.com/downloads 3.下载安装tortoisegit,电脑64位就下载这个,如图: 4.下载安装“ ...
- 使用jmeter做简单的场景设计
使用jmeter做简单的场景设计 Jmeter: Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试.我之所以选择它,最重要的一点就是----开源 个人 ...