【问题标题】:Spring Batch Update: Insert only if does not exist otherwise updateSpring Batch Update:仅在不存在时插入,否则更新
【发布时间】:2013-07-31 09:41:03
【问题描述】:

我需要写一个批量更新语句。我能够做到这一点。我的表中没有任何主键。有可能将重复数据发送到数据库。 我想以仅在数据不存在时才插入的方式编写批量更新。当我说数据不存在时,我的意思是表的 3 列可以唯一标识一行。我不想使用这 3 列创建主键。 有没有一种方法可以编写批量更新,只有在数据不存在时才会插入,否则它将进行更新。 我已经尝试过合并查询,但无法得到它。 谢谢

【问题讨论】:

  • 是的,合并是正确的方法。您能否提供一个不起作用的示例查询?

标签: sql-server spring


【解决方案1】:

您可以使用 ItemProcessor 来查询 filter out 重复的项目,如果项目已经存在于数据库中,则返回 null:通过处理器的对象可以使用 ItemWriter 写入并且您确定没有重复

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-12
    • 1970-01-01
    相关资源
    最近更新 更多