0

同步 SQL Server 中的表(客户)和 Microsoft Excel 中 CSV 文件中的客户的更好方法是什么?

好的,这里是解释:我正在用 C#.NET 2008 开发一个软件,我在 SQL Server 2005 中创建了一个名为 Customers 的表。这个表的内容来自一个 CSV 文件,用户可以添加更多信息,因为 SQL表的字段比 CSV 文件多。

第一次很容易..我只是为 CSV 文件中的每一行添加新的。但是,由于这些额外的字段,我第二次无法删除所有表以从头重新导入,所以我需要一种可以自动验证 SQL 表和 CSV 文件中的每条记录的方法?还是我需要一一处理记录?

4

2 回答 2

0

您可以将 CSV 表和额外信息分成一个表和一个视图。您将拥有一个表,它只是 CSV 文件本身的一个哑镜像,并且易于更新:

    TRUNCATE TABLE csvmirror;
    BULK INSERT csvmirror
    FROM 'P:\ath\to\csvfile.csv' WITH
    ( FIELDTERMINATOR = ','
    , ROWTERMINATOR = '\n' );

然后,您在该“csvmirror”表上创建一个视图,用数据库中的额外数据补充直接 csv 文件数据。

于 2009-10-23T08:51:22.273 回答
0

看看 SQL Server Integration Services,它可以做任何你想做的事情,甚至更多。

或者,如果您确实想对其进行编码,那么我建议对 CSV 中的所有字段进行哈希处理,并使用它来比较每一行。不同的哈希 = 更改 = 更新的行。

于 2009-10-19T11:56:38.173 回答