【问题标题】:SQLXML Bulk Load or manual iteration?SQLXML 批量加载还是手动迭代?
【发布时间】:2014-10-02 09:52:43
【问题描述】:

我希望每天将 20-25MB 的 xml 文件插入数据库。问题是每个条目都需要添加一个带有计算值的额外列。所以我想知道的是,最有效的方法是在编辑 xml 文件后使用 SQLXML Bulk Load 工具,运行 xml 文件并添加新列然后加载每个项目,或者使用 Bulk Load 然后通过数据库添加新的列值。

【问题讨论】:

  • 你能从那行的信息中计算出添加字段吗?如果是这样,我根本不会存储计算值...按原样加载文件,并且每当您需要显示该计算值时,请在您的选择语句中使用 SQL 生成它。
  • 我可以,这就是我要做的,但是当我去检索值时,我希望能够通过该计算值搜索表。
  • 您可以在 where 语句中使用计算(如果您通过总和或平均值等聚合进行过滤,请使用“拥有”)。您将无法索引此值...您是否要为其编制索引?
  • 不,我不想索引该值。我不知道这个关于 sql 我应该能够做到这一点。并且只使用批量加载。谢谢。
  • 能否将计算字段添加为计算列?

标签: c# sql asp.net xml


【解决方案1】:

评论=答案

无需单独存储此值。由于它是一个计算值,其中包含您需要在每条记录上计算它的数据,因此您可以即时计算它,而不是将其存储为它自己的唯一值。混合使用 where 和/或 having 子句将允许根据计算值过滤(搜索)结果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-02
    • 1970-01-01
    • 2011-09-21
    • 2011-05-23
    相关资源
    最近更新 更多