【问题标题】:Import Excel to SQL Server with Insert and Update Using Entity Framework使用实体框架通过插入和更新将 Excel 导入 SQL Server
【发布时间】:2013-11-17 17:52:40
【问题描述】:

我有一个 excel 文件,我想使用实体框架基于现有的数据库表导入 excel 文件。现在我首先将 excel 工作表转换为 DataTable,并有一个循环遍历 DataTable 的每一行。每行都有一个 id 字段,如果 id 存在于数据库表中,我需要更新它,否则我需要将此行插入到数据库表中。我想使用实体框架将我的循环包装到一个事务中,以便在出现错误时进行回滚。但是我遇到了两行具有相同 id 但值不同的场景。检查第一行并添加了我的实体集合,但第二行可能会错误地更新第一个添加的行,因为由于循环后调用的延迟 context.SaveChanges() 而实际上并未添加第一行。如何更新实体集合中先前添加的行,而无需在循环内重复调用 context.SaveChanges()?谢谢。

【问题讨论】:

    标签: excel insert entity


    【解决方案1】:

    我认为我在过去十年左右没有这样做过,但我使用 Microsoft Word 的邮件合并为 Excel 工作表中的每一行创建了我需要的 SQL 语句(SELECT、INSERT 和 UPDATE)。一旦我得到文本中的长 SQL 语句,我只需将其复制粘贴到控制台中,然后执行该语句并完成工作。我相信有更好的方法可以做到这一点,但它在当时知识有限但需要的情况下起作用。这个答案可能属于“不要在工作中尝试这个,但如果它可以完成这项工作,那么在家里也可以这样做”类别。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-23
      • 2019-12-17
      • 2017-02-01
      • 1970-01-01
      • 2011-08-20
      • 2015-07-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多