当我使用powershell脚本查询数据库时,如何避免输出int值?

时间:2014-10-30 03:02:48

标签: powershell

我最近的项目需要使用powershell来查询来自mysql数据库的数据,并且我找到了一个很好的脚本来执行它,唯一的问题是脚本将始终输出一个int值(这正是返回项的数量) )。如何避免这种输出?我唯一想要的是查询数据。 以下是脚本:

$mysqlDllFilePath = "C:\temp\powerShellScript\MySQL.Data.dll"
[void][system.reflection.Assembly]::LoadFrom($mysqlDllFilePath)

$myconnection = New-Object MySql.Data.MySqlClient.MySqlConnection

$myconnection.ConnectionString = "server=localhost;userid=root;password=admin;database=temp;pooling=false"

$myconnection.Open()

$mycommand = New-Object MySql.Data.MySqlClient.MySqlCommand

$mycommand.Connection = $myconnection

$mycommand.CommandText = "SELECT SiteGuid,SiteName,ProductEdition,ProductVersion from site"

$adapter = new-object MySql.Data.MySqlClient.MySqlDataAdapter

$adapter.SelectCommand = $mycommand

$ds = new-object System.Data.DataSet

$adapter.Fill($ds)

$myconnection.close()
$ds.Tables[0]

脚本的输出是:

PS C:\Users\jason> C:\temp\powerShellScript\Get-ConfigSite.ps1
2

SiteGuid                 SiteName                 ProductEdition           ProductVersion
--------                 --------                 --------------           --------------
123f7267-757c-4864-b0... simulatedSite            PLT                      7.1
526f7267-757c-4864-b0... simulatedSite            PLT                      7.1

如何避免输出值“2”?

1 个答案:

答案 0 :(得分:0)

好的,我找到了输出的原因,这是“$ adapter.Fill($ ds)”语句的输出,如果我声明一个变量来保存这个值,它就不会输出到控制台。也许这就是powershell的语法。 解决方案是将该语句更改为“$ count = $ adapter.Fill($ ds)”。 无论如何,谢谢。