【发布时间】:2017-08-23 13:32:58
【问题描述】:
我正在尝试从文本文件中批量插入表格并保留行顺序。我这样做有两个原因:
- 我需要检查第一行是否是标题,如果是则删除它
- 我正在报告“错误”(列值应该是什么与给出的值之间的差异,即字母数字字段中的一个字母),并且需要告诉他们它们发生在文本文件中的哪一行。同时我仍然需要插入这些行,只是在有错误的列上使用空白值。
要进行批量插入,我首先将其插入到临时表中,然后将清理后的值插入到主表中。但是临时表似乎是随机顺序的。
输入文件没有任何特定的顺序,所以我无法通过 order-by 查询来解决这个问题。
对我可以在这里做什么有什么建议吗?
【问题讨论】:
-
您使用了错误的工具。 SSIS 就是为此目的而设计的,但它是一个复杂的工具。并且您将报告“错误”的想法毫无意义 - 除非您计划插入字符串列表然后检查数据类型问题 RBAR。在 tsql 中执行此操作将极具挑战性。
-
@SM 或者这是在 WPF 应用程序中。它需要离线运行并使用本地数据库。我报告“错误”确实是有道理的,因为我们的审计员想知道是否有空白字段,或者应该有数字的字母而不梳理数十万条记录。我已经使用您描述的方法成功地做到了这一点,只是没有报告正确的行号。该应用程序运行速度非常快,并且除了行号问题之外运行良好。
标签: sql-server wpf vb.net tsql