按照本教程,我尝试使用 PowerShell 从 SQL Server 检索 xml 数据,但我只得到一个元素。
这是一个显示实际数据的查询:
但是运行这个脚本我只得到一个元素:
$SQLServer = 'MYSERVER,1433'
$SQLDBName = "test"
$Query =
@'
USE test
SELECT EventLogXML FROM ForwardedEvents
'@
$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = "Server = $SQLServer; Database = $Database; Integrated Security = True"
$SqlConnection.open()
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = $Query
$SqlCmd.Connection = $SqlConnection
$xr = $SqlCmd.ExecuteXmlReader()
$xd = New-Object System.Xml.XmlDataDocument
$xd.Load($xr)
$xr.Close()
$SQLConnection.Close()
$xd
$xd
只有一个元素。我究竟做错了什么?
---编辑我可以通过 $xd.outerxml 来确认它只有一个 xml 文档,它显示了完整的文档。它只是我存储在 EventLogXML 列中的数千个事件 xml 文档中的一个。