我正在尝试从Powershell连接到SQL Server并收到此错误
使用“ 0”参数调用“ Open”的异常:“目标主体 名称不正确。无法生成SSPI上下文。” C:\ Users \ Musawwir \ Downloads \远程访问db.ps1:10 char:1 + $ Connection.Open() + ~~~~~~~~~~~~~~~~~~ + CategoryInfo:未指定:([],MethodInvocationException + FullyQualifiedErrorId:SqlException异常,使用“ 1”参数调用“填充”:
我可以通过SSMS从其他计算机连接到SQL SERVER,但是不能通过powershell连接,脚本也可以在本地计算机上正常运行。
这是我正在使用的代码:
[string] $Server= "tcp:DESKTOP-J9UQ90E,1433"
[string] $Database = "Eshop"
[string] $SQLQuery= "[dbo].[usp_getCustomerAge]"
$Connection = New-Object System.Data.SQLClient.SQLConnection
$Connection.ConnectionString = "server='$Server';database='$Database';Connection Timeout=300;Integrated Security=TRUE;UID=ali;PWD=1234"
$Connection.Open()
$Command = New-Object System.Data.SQLClient.SQLCommand
$Command.Connection = $Connection
$Command.CommandText = $SQLQuery
$Command.CommandTimeout=500
$adp = New-Object System.Data.SqlClient.SqlDataAdapter $Command
$data = New-Object System.Data.DataSet
$adp.Fill($data) | Out-Null
$data2 = ''
$emp = ''
foreach($Row in $data.Tables.Rows){
[string]$C_name = $Row[0]
$C_name
$data2= $data2+ "|"+$C_name
$C_name = $C_name+"|"
$C_name | out-file "d:\\test4.txt" -Append
}
$Connection.Close()
#$data2 | out-file "d:\\test4.txt"
答案 0 :(得分:0)
用户ali无法访问存储过程..将用户从ali更改为sa并将集成安全性更改为false解决了问题