sqlserver insert into 批量插入数据

sqlserver insert into 批量插入数据

最近接收了一个XUEXIAO的老项目使用的是sqlserver库,然后需要从别的库拉取数据并且插入其他库中,然而我再mybatis里面写的sql报错,说是我","附近语法错误,然后经过检查发现,sqlserver的批量新增跟mysql跟oracle不太一样,特意写下此文防止大家踩坑。

刚开始的sql

注意 :XX表示的是表名或者字段

<insert id="XXX" parameterType="list">
    insert into
    XX (XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX)
    VALUES
    <foreach collection="list" index="index" item="item" open="" close="" separator=" , ">
        #{item.XX},#{item.XX}, #{item.XX},#{item.XX}, #{item.XX},#{item.XX}, #{item.XX},#{item.XX}, #{item.XX},#{item.XX}, #{item.XX}
    </foreach>
</insert>

修改以后的sql

<insert id="XXX" parameterType="list">
    insert into
    XX (XX,XX,XX,XX,XX,XX,XX,XX,XX,XX,XX)
    SELECT
    <foreach collection="list" index="index" item="item" open="" close="" separator=" UNION ALL SELECT ">
        #{item.XX},#{item.XX}, #{item.XX},#{item.XX}, #{item.XX},#{item.XX}, #{item.XX},#{item.XX}, #{item.XX},#{item.XX}, #{item.XX}
    </foreach>
</insert>
语法:

批量插入数据

insert into 表名  select * from--或
insert into 表名(字段1,字段2select 字段1,字段2 from
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

于歌852

您的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值