0

我有一些 csv 文件。我想编写 SQL Server 脚本以在某个时间段读取文件并插入 SQL Server db,如果找不到记录,如果调度程序先前已读取文件,则忽略它。每个 csv 将仅包含一条记录。

喜欢:

1.csv => John,2000,2012/12/12
2.csv => Tom,3000,2012/12/11

如果有人可以提供脚本示例,那就太好了。

谢谢!

4

1 回答 1

0

如果我是你,我会创建一个使用多文件输入的 SSIS 包。这个输入让您从目录中的每个文件中提取数据。

以下是 SSIS 包的基本步骤。

  1. 检查“工作”目录中是否有任何文件。如果没有结束包。
  2. 将每个文件从“工作”目录移动到“暂存”目录。
    您将这样做,以便当您在包中间时,如果其他文件出现在您的“工作”目录中,您将不会丢失它们。
  3. 读取“staging”目录中的所有文件。使用具有多文件输入的数据流。
  4. 读取完成后,将所有文件移动到“备份”目录。这当然假设您出于某种原因想要保留它们。您可以轻松地将它们从“暂存”目录中删除。

一旦你完成了你的包,然后使用 SQL Server 代理安排它在你感兴趣的任何时间间隔运行包。

于 2013-03-31T17:33:43.587 回答