You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从PowerShell访问SQL Server数据库时遇登录失败错误求助

PowerShell连接SQL Server报"Login failed for user"错误的解决方案

我尝试通过PowerShell连接SQL Server数据库,持续收到以下错误:

Exception calling "Open" with "0" argument(s): "Login failed for user 'revadmin'."
At line:1 char:5

  • $conn.Open()
    
  • ~~~~~~~~~~~~
    
    • CategoryInfo : NotSpecified: (:) [], MethodInvocationException
    • FullyQualifiedErrorId : SqlException

已确认凭证有效,将相同凭证复制到SSMS中可正常连接。使用的连接代码如下:

$connString = "MyConnectionString"
$conn = New-Object System.Data.SqlClient.SqlConnection $connString
$conn.Open()

问题核心原因

此前该问题曾被标记为重复,但推荐问题未覆盖此核心场景:连接字符串密码中的某个字符被PowerShell识别为变量开头(比如$符号),导致密码被错误解析,进而触发登录失败。这种细节容易被忽略。

解决方案

  • 使用单引号包裹连接字符串,避免PowerShell解析其中的变量:
$connString = 'Server=your_server;Database=your_db;User ID=revadmin;Password=your_pass$with_var_char'
$conn = New-Object System.Data.SqlClient.SqlConnection $connString
$conn.Open()
  • 若必须使用双引号,对密码中的特殊字符(如$)进行转义,在字符前添加反引号(`):
$connString = "Server=your_server;Database=your_db;User ID=revadmin;Password=your_pass`$with_var_char"
$conn = New-Object System.Data.SqlClient.SqlConnection $connString
$conn.Open()

内容的提问来源于stack exchange,提问作者David

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 07:17:10