我有一个powershell脚本,可以将SQL语句的结果导出为CSV。
Powershell中的导出命令
$DataSet.Tables[0] | Export-Csv $extractFile -NoTypeInformation
脚本称为ExportToCsv.ps1
我通过命令提示符调用它,工作正常并保存文件。
我通过powershell GUI运行脚本,工作正常并保存文件。
在SSMS中创建一个外部工具,它看起来像是在运行(窗口闪烁并关闭)但没有保存任何内容。
外部工具设置:
命令:%windir%\ System32 \ WindowsPowerShell \ V1.0 \ powershell.exe
参数: - 文件C:\ ExportToCSV.ps1 $(CurText)
我勾选了“提示参数”选项,看看它实际上在做什么,以及它:
C:\ windows \ System32 \ WindowsPowerShell \ V1.0 \ powershell.exe -File C:\ ExportToCSV.ps1“select 1,2,3”
我将该完整命令复制并运行到cmd中,它运行正常。
知道为什么没有通过SSMS做任何事情?
答案 0 :(得分:0)
忘掉它,在SSMS外部工具中勾选“使用输出窗口”找到问题。它说明了原因:
“无法加载ExportToCSV.ps1,因为 在这个系统上禁用了脚本的执行。“