【发布时间】:2014-10-11 05:30:36
【问题描述】:
我想使用 powershell 运行 sql 脚本,但出现错误“‘Invoke-sqlcmd’一词未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查 t 名称的拼写,或者如果包含路径,请验证路径是否正确,然后重试。"
我从某个网站找到了下面的 sn-p。但这仅适用于一个 sql 命令。但我想运行一个 sql 脚本。
有人可以帮忙修改下面的sql脚本或任何更好的建议吗?
SQLServer = "ABCD\ABC"
$SQLDBName = "ABC_1223"
$SqlQuery = "select * from table"
$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = "Server = $SQLServer; Database =$SQLDBName;uid=$SQLDBName;pwd= $pwd; Integrated Security = True"
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = $SqlQuery
$SqlCmd.Connection = $SqlConnection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
$SqlConnection.Close()
clear
$DataSet.Tables[0]
【问题讨论】:
-
要使用invoke-sqlcmd,您必须导入sqlps 模块。 blog.smu.edu/wis/2012/11/26/sql-server-powershell-module-sqlps
-
@David Brabant 你能帮我完成那件事吗?你手头有什么步骤吗?您还可以看到我们可以对上面的脚本进行任何修改吗?
标签: sql-server sql-server-2008 powershell powershell-2.0 powershell-3.0