c#中比较数据库表和数据表的最佳方法

本文关键字:数据表 最佳 方法 比较 数据库 | 更新日期: 2023-09-27 18:14:23

我从Excel文件中加载了一些数据。它有一个键值,我想从数据库表中这些键的可能值中验证这个键值。据我所知,基于性能,我有两种选择:在c#方法中比较或在数据库服务器上的存储过程中比较。

我猜数据库方法是性能更好的选择,但我一直在试图找出将c#数据表传递到存储过程的最佳(性能方面)方法。它可以是XML,可以用迭代加载临时表,或者类似的东西。我试图做到这一点,而不迭代两个表。

类似:

select postal_code
from postaldata
where not exists (
   select ClientPostalCode
   from PassedXML
)

我只是想知道我的方向是否正确,或者是否有人有更好的方向。

事实:

  • datatable: Excel表从客户端与邮政编码(只有有意义的列)
  • 数据库表:所有邮政编码
  • 尝试实现:列表中所有Excel表中不存在的代码在数据库表
  • SQL Server 2012
  • 。NET 4.5

c#中比较数据库表和数据表的最佳方法

最简单快捷的方法:

将excel行中的值连接起来,以逗号分隔,然后查询数据库。

Select postal_code from postaldata where postal_code not in (
    excelvalue1, excelvalue2, excelvalue3, ...
  )