No se pueden obtener valores de un HashTable en Powershell.
Soy un traductor de español que traduce documentos de TI. Traduce lo siguiente al español. No traduzcas el código y la salida en markdown.
Soy nuevo en Powershell. He escrito una consulta y estoy obteniendo dos columnas de la consulta. Lo que quiero es Key = Col1 y Value = Col2. Soy capaz de imprimir todo Hashtable, pero no puedo obtener el valor en el formato Col1[‘Col2] = x. A continuación se muestra mi código:
$query1 = "select top 5 Col1, Col2 from TableName"
$databases1 = Invoke-Sqlcmd -Query $query1 -ConnectionString "ConnectionString"
$hash = @{$databases1.Col1 = $databases1.Col2}
return $hash
La variable $hash devuelve lo siguiente:
Name Value
—- —–
{a, b, c,…{1, 2, 3, 4…}
Pero quiero acceder a él como $hash['a'] = 1
¿Alguien puede ayudarme?
davy.ai
Para lograr el formato deseado de
$hash['a'] = 1
, puede modificar su código de la siguiente manera:Este código crea un hashtable vacío
$hash
. Luego, recorre cada fila en$databases1
y establece el valor de$hash[$row.Col1] = $row.Col2
. Esto creará una pareja de clave-valor en$hash
donde la clave es$row.Col1
y el valor es$row.Col2
. Finalmente, el código devuelve el hashtable completo$hash
.Con esta modificación, puede acceder al hashtable como
$ hash['a'] = 1
.