Saltar al contenido

Devolver consulta SQL como matriz en Powershell

Solución:

Haría esto:

$DBNameList = @(Invoke-SQLCmd -query "select Name from sysdatabases" -Server DEVSQLSRV) | select-object -expand Name

Eso le dará una variedad de nombres. -contains debería funcionar bien.

Lo que falta en la publicación original es algún tipo de conversión, de un objeto a una matriz.

Powershell genera el resultado de $ DBNameList porque interpreta un poco el objeto. Pero si necesita manipular este objeto e identificar un elemento específico de él, este es el método que uso:

$Itm = "DBTwo"
$DBNameList = @(Invoke-SQLCmd -query "select Name from sysdatabases" -Server DEVSQLSRV)
$NameList = @($DBNameList | select-object -ExpandProperty Name)
$Name = ($NameList.Split()).Contains($Itm)
Write-Output $Name

Cierto

He estado buscando esto por mí mismo por un tiempo y finalmente lo resolví, ¡así que espero que ayude a alguien más!

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *