【问题标题】:How can I link values in a text file to values in a SQL Server table?如何将文本文件中的值链接到 SQL Server 表中的值?
【发布时间】:2015-05-29 13:41:03
【问题描述】:

更新 2

本质上,我想将 dataTable 传递给 SQL Server,但实际上并不是“创建它”,就像一个临时的东西使用:

cmd.CommandText = "SELECT * 
                   FROM table1 
                   INNER JOIN dataTable 
                   ON sample.name = dataTable.name"

如何以类似的方式将数据表从 vb.net (.NET 2.0) 传递到 SQL Server?

更新 1

所以我想也许将文本文件中的数据传递到数据表中,并使用它与 SQL Server 表进行比较?如果可能的话,我该怎么做?

原帖
我在 SQL Server 2012 中有一个表(即 dbo.sample1),表中有一个包含名称的列(即 abc01、abc02、abc03、hijk01、hijk02...)

我运行了一些 vb 代码,从我的机器上满足特定条件的目录(即 abc01、abc02...)中提取某些不带扩展名的文件名,这些文件名保存在文本文件中的单独行中。

是否有任何更简单方便的方法可以仅将我的文本文件中的名称链接到我的表中的名称,以免显示任何不在文本文件中的行?我想我可以坐下来插入一堆 WHERE name = 'abc01' ......但并不想在那里为我拥有的所有名字做那个。但我不确定这是否可以正常工作,因为我需要对数据库中的 2 个表执行 INNER JOIN 到文本文件中的值。

如果这是一个长期的问题,那么请指出正确的方向,我可以研究并继续前进,但非常感谢任何帮助,谢谢!

【问题讨论】:

    标签: vb.net sql-server-2012 text-files


    【解决方案1】:

    如果文件名列表合理,您可以使用 IN() 子句:

    SELECT * from XXX WHERE  name IN ('abc01', 'abc02', 'abc03',...)
    

    如果列表太长,请查看批量复制到临时表以与 JOIN 一起使用。

    【讨论】:

      猜你喜欢
      • 2013-06-23
      • 2019-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多