【发布时间】:2012-04-06 17:18:10
【问题描述】:
我让这个 sqlcmd sn-p 批量工作,但是当我转换为 powershell 时,它坏了。这就是我试图使用 powershell 调用的内容
Sqlcmd -S localhost\instance -d database -U username -P password -i "sqlQuery.sql" -s "," > \sqlOutput.csv -I -W -k
我尝试了invoke-sqlcmd,但我收到错误“术语'invoke-sqlcmd'未被识别为cmdlet、函数、脚本文件或可运行程序的名称”
关于下面的评论,我已经加载了所需的管理单元。这确实有帮助,但我现在遇到了这个错误。 "Invoke-sqlcmd : 无法处理参数,因为参数名称 's' 不明确。
如果我把它放在单引号中......
invoke-Sqlcmd '-S localhost\instance -d database -U username -P password -i "sqlQuery.sql" -s "," > \sqlOutput.csv -I -W -k'
我收到错误“在建立与 sql server 的连接时发生与网络相关或特定于实例的错误。这对我来说没有意义,因为我在这里使用的相同凭据(在同一个盒子上)在以下情况下工作从批处理中调用。
【问题讨论】:
-
要调用 Invoke-Sqlcmd,您必须已加载 SQL 管理单元。
-
sqlcmd.exe和invoke-sqlcmd的参数不一样。有关参数列表和示例用法,请参见帮助 invoke-sqlcmd -full
标签: sql powershell sqlcmd