Ejecución de consultas SQL desde PowerShell en su máquina local
PowerShell proporciona la capacidad de ejecutar consultas SQL arbitrarias en una instancia de servidor SQL. Esto se puede hacer solo con stock .NET y PowerShell. Aquí hay una función que simplifica el proceso:
function Invoke-SQL { param( [string] $dataSource = ".\SQLEXPRESS", [string] $database = "MasterData", [string] $sqlCommand = $(throw "Please specify a query.") ) $connectionString = "Data Source=$dataSource; " "Integrated Security=SSPI; " "Initial Catalog=$database" $connection = new-object system.data.SqlClient.SQLConnection($connectionString) $command = new-object system.data.sqlclient.sqlcommand($sqlCommand,$connection) $connection.Open() $adapter = New-Object System.Data.sqlclient.sqlDataAdapter $command $dataset = New-Object System.Data.DataSet $adapter.Fill($dataSet) | Out-Null $connection.Close() $dataSet.Tables }
Esta función requiere que especifique la fuente de datos (generalmente el nombre de su máquina o. \ SqlexPress), el nombre de la base de datos y el comando sql que desea ejecutar.
una vez que tenga esta función definida, puede ejecutar arbitrary arbitrary de PowerShell llamando a Invoke-SQL con los parámetros apropiados. Por ejemplo, el siguiente comando ejecutará la consulta "seleccionar * de los clientes" en la base de datos "myDatabase" en la instancia de servidor SQL local:
Invoke-SQL -database "MyDatabase" -sqlCommand "SELECT * FROM Customers"
Esto devolverá un conjunto de datos que puede ser el conjunto de resultados de los resultados de la query, que luego puede funcionar en el query, con el que puede funcionar en el query, con el query, con el que puede funcionar en el query. PowerShell.
Esta función se ha mejorado aún más en un módulo PowerShell disponible en GitHub: https://github.com/chrismagnuson/invokesql. Al instalar este módulo, puede cargar automáticamente la función Invoke-SQL en su entorno PowerShell y usarlo sin problemas sin tener que definirlo manualmente.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3