如何在查询中返回没有列名的行的值?

时间:2016-03-07 09:10:58

标签: sql sql-server powershell

我正在编写一个Powershell脚本,它通过SQLPS模块提取数据,直接向SQL Server执行查询。如果我做一个简单的

Select <column A> from <table B>

我也列出了列,如下所示:

Column A
--------
Value C

这里我希望只检索值C,将其存储为变量。

1 个答案:

答案 0 :(得分:1)

如果您不一定要使用此SQLPS模块,那么这可能是一种更简单的方法:

$connection = new-object System.Data.SqlClient.SqlConnection("Data Source=.;Initial Catalog=TestDB;Integrated Security=True");
$connection.Open()

$query = "SELECT [A] FROM [dbo].[Tablename]"
$cmd = new-object "System.Data.SqlClient.SqlCommand" ($query, $connection)
$cmd.CommandTimeout = 0

$executeReader = $cmd.ExecuteReader()

while ($executeReader.Read()) { 
    $Name = $executeReader.GetValue(0)
    //Do what you desire with the resultset.
    $Name + "`r`n" >> D:\PathToResultFolder\result.txt
}

$executeReader.Close()
$connection.Close()

此外,我读到并认为这应该在Query之外处理,因为Query不显示列名是不正常的。