SSIS 数据验证和数据加载

发布于 2024-11-18 07:05:53 字数 295 浏览 2 评论 0原文

我需要从下面列出的选项中获得有关最佳方法的建议。我需要验证Excel文件数据并将其加载到SQL Server

验证包括

  • 非重复列
  • 强制字段存在
  • 数据库中不存在的字段

如果发生错误我会在数据库中的错误日志表中写入

以下是我的方法

  • 将数据加载到临时表中数据库
  • 运行验证
  • 记录错误
  • 成功将其加载到主表

如果您对此场景有任何其他更好的想法请告诉我

I need suggestion on best approach from below listed options. I need to validate excel file data and load it to SQL Server

Validations include

  • Non Duplicate columns
  • Mandatoty fields present
  • Fields not present in Database

In case of error I would write in errorlog table in database

Below is my approach

  • Load the Data into a Temp Table in Database
  • Run the Validations
  • Log the Error
  • On success load it to main tables

Please let me know if you have any other better ideas for this scenario

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦里的微风 2024-11-25 07:05:53

以下是几种可能的方法:

    1. 使用SSIS

  • 创建 Excel 连接管理器,然后将数据流任务与 OLEDB 源、查找转换(以消除不需要的记录)、OLEDB 目标一起使用
    直接进入主表。
  • 您还可以选择重定向或忽略不满足转换的行。
  • (如果excel很大的话可以使用批量插入任务而不是处理RBAR)

      2. Using TSQL

  • BULK INSERT 或 BCP 或使用 OPENROWSET 到临时表中。请注意,您需要安装适当的驱动程序(适用于 x32 的 JET 或适用于 x64 SQL Server 的 ACE)。
  • 然后在加载到主表之前通过记录到错误表(raiseerror、try-catch)来进行错误处理。
  • Here are couple of approaches that are possible:

      1. Using SSIS

  • Create excel connection manager then use dataflow task with OLEDB Source, lookup transform (to eliminate the records NOT needed), OLEDB destination
    directly into main table.
  • You can also choose to redirect or ignore rows that do not satisfy the transformations.
  • (use can use bulk insert task if the excel is really large instead of dealing RBAR)

      2. Using TSQL

  • BULK INSERT or BCP or use OPENROWSET into staging table. Beware that you need to have approriate drivers installed (JET for x32 or ACE for x64 SQL Server).
  • Then do error handling by logging to error table (raiseerror, try-catch) before loading to main table.
  • ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文