仅将新的或更新的记录导入到sql数据库中,使用bcp导入和导出

发布于 2024-11-02 19:00:35 字数 504 浏览 1 评论 0原文

我有一个 csv 文件。现在,我必须将此文件中的所有数据导入到我的 sql 数据库 mdf 文件中。

ItemID

178

212

3423

我会简单地从 bcp 进行导入。但是,一段时间后,文件会更新一些新记录,我希望这次我只获取新记录并插入到 sql 数据库中。如何做到这一点?我是否必须匹配现有的 ItemID,或者在 ItemID 列上使用主键,以及何时自动拒绝重复记录,或者我应该添加一个新列作为 DateTimeofInsert,然后进行相应操作,请建议?:

ItemID

178

212

3423

4676

782

2308

另外,我使用的是 Sql Server Express,那么是否有任何选项可以通过使用计划作业等来自动执行此过程?

I am having a csv file. Now, i have to import all the data from this file into my sql database, mdf file.

ItemID

178

212

3423

I would do the import simply from the bcp. But, after some time the file is updated with some new records and i want that this time i would only take the new records and insert into the sql database. How to do this? Will i have to match the existing ItemIDs, or use a Primary Key on the ItemID column, and when it would automatically reject the duplicate records, or shall i add a new column as DateTimeofInsert, and then go accordingly, Please sugget?:

ItemID

178

212

3423

4676

782

2308

Also , am using Sql Server Express, so is there any option to automate this process by using Scheduling Jobs etc?

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

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

发布评论

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

评论(1

画骨成沙 2024-11-09 19:00:35

您只需跟踪每次处理的行号即可。因此,每次您的进程选择文件以将新行加载到数据库中时,您都会从上次访问的文件中的下一行开始。保存任何匹配。

或者,每次处理文件时,您可以遵循以下方法:

  1. 重命名文件(这样就不会再写入文件,并且写入文件的进程将创建一个新文件)
  2. 将文件导入到DB
  3. 删除/归档文件

You could just keep track of what line number you process up to each time. So each time your process picks up the file to load new rows into the db, you start from the next line in the file that you last got to. Saves any matching up.

Or, each time you process the file, you could follow this approach:

  1. rename the file (so it won't be written to any more, and the process that is writing to the file will create a new file)
  2. import the file to the DB
  3. delete/archive the file
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文