我在PowerShell中执行SQL查询,我需要将该查询的结果传递给txt文件。我该怎么办?
实际上这是我的代码:
$QUERY = "SELECT ID_ORDEN_COMPRA,COMPROBANTE_TRANSACCION FROM ORDEN_COMPRA";
Write-Output $QUERY;
$DB_LIST = Invoke-Sqlcmd -AbortOnError -EncryptConnection -ConnectionTimeout $TIMEOUT -Database 'dbprod_itswebpay' -ServerInstance $SQL_SERVER_FULLNAME_SOURCE -Username $SQL_ACCOUNT_NAME_SOURCE -Password $SQL_ACCOUNT_PASSWORD_SOURCE -Query $QUERY;
答案 0 :(得分:0)
解决方案很简单,Victor Silva给了我解决方案
Get-Process | Out-File -FilePath C:\procesos.txt
$QUERY = "SELECT ID_ORDEN_COMPRA, COMPROBANTE_TRANSACCION FROM ORDEN_COMPRA WHERE COMPROBANTE_TRANSACCION IS NOT NULL AND FECHA_PAGO_ORDEN_COMPRA <= '20180101 23:59:59'";
Write-Output $QUERY;
$DB_LIST = Invoke-Sqlcmd -AbortOnError -EncryptConnection -ConnectionTimeout $TIMEOUT -Database 'dbprod_itswebpay' -ServerInstance $SQL_SERVER_FULLNAME_SOURCE -Username $SQL_ACCOUNT_NAME_SOURCE -Password $SQL_ACCOUNT_PASSWORD_SOURCE -Query $QUERY;
答案 1 :(得分:0)
“PowerShell”方法是使用Out-File
cmdlet,最后添加此行:
$DB_LIST | Out-File "my-file-path.txt"
如果您需要将文件编码设置为UTF8(例如),您还应该考虑明确设置文件编码:
$DB_LIST | Out-File "my-file-path.txt" -Encoding UTF8
答案 2 :(得分:0)
这些是对象,所以我将其导出到csv(ascii):
$DB_LIST | export-csv dblist.csv
请注意,默认情况下,文件外文件采用unicode编码。