关于C#连接SQL Server时提示用户登录失败的解决方法

作者:碎岁语 时间:2021-10-03 21:21:58 

在用C#开发windows端程序并连接SQL Server时有可能会遇到数据库登录失败的问题,报错现象如下图所示:

关于C#连接SQL Server时提示用户登录失败的解决方法

报错信息如下:

System.Data.SqlClient.SqlException: '用户 '' 登录失败。'
This exception was originally thrown at this call stack:
    [External Code]
    MyQQ.DataOperator.ExecSQL(string) in DataOperator.cs
    MyQQ.Frm_Login.pboxLogin_Click(object, System.EventArgs) in Frm_Login.cs
    [External Code]
    MyQQ.Program.Main() in Program.cs

这个问题的一种可能的原因是SQL Server数据库设置了仅以windows身份验证模式,或C#代码中登录数据库的语句中没有正确填写数据库通行证。

解决的办法也简单,不需要动数据库里面的内容,仅通过 Microsoft SQL Server Management Studio 工具设置一下登录模式即可。

具体的步骤如下:

1、打开Microsoft SQL Server Management Studio 并连接上要设置的数据库。

2、在数据库根上右键,选择“属性”

关于C#连接SQL Server时提示用户登录失败的解决方法

3、在弹出的对话框中选择“安全性”,再选择“SQL Server和Windows身份验证模式”,随后确认保存修改。如下图所示:

关于C#连接SQL Server时提示用户登录失败的解决方法

4、展开到“登录名”项,如下图所示:

关于C#连接SQL Server时提示用户登录失败的解决方法

5、检查是否有开放通行证用以登录数据库。sa账户是SQL Server默认的通行证,打个红叉就表示这个账户当前被禁用。

6、选中要启用的账户,右键打开属性对话框,再设置好登录密码,如下图所示:

关于C#连接SQL Server时提示用户登录失败的解决方法

7、切换到“状态”,再按下图所示设置账户开关:

关于C#连接SQL Server时提示用户登录失败的解决方法

8、保存设置后重启Microsoft SQL Server Management Studio 软件

9、在登录选项时选择SQL Server身份验证,如下图所示:

关于C#连接SQL Server时提示用户登录失败的解决方法

10、此时一般都可以正常登录的了。

11、再次运行C#程序,正确配置连接数据库字符串:

private static string connString = @"Data Source=CHORM-DESKTOP;Database=db_MyQQ;User ID=sa;Pwd=123456;";

12、一般而言,都可以正常连接的了。

如果经过了上述步骤操作且确认通行证信息正确配置仍然无法正常登录,则要检查一下SQL Server服务是否正在运行。

在windows桌面选择“此电脑”,右键打开“管理”,按下图所示检查SQL Server服务的运行状态

关于C#连接SQL Server时提示用户登录失败的解决方法

如果服务未运行,则右键手动启动一下。

一般而言,按照上述步骤操作后都能解决这一问题。

来源:https://www.cnblogs.com/chorm590/p/14039330.html

标签:C#,SQL,Server,用户登录,失败
0
投稿

猜你喜欢

  • Java基于socket实现简易聊天室实例

    2021-10-30 00:24:56
  • Kotlin协程Channel特点及使用细节详解

    2021-06-03 08:12:34
  • 解决Java中properties文件编码问题

    2022-07-21 14:09:06
  • 浅谈JVM中的JOL

    2022-10-06 15:44:49
  • C# 解析XML和反序列化的示例

    2023-02-20 01:16:52
  • 在Android环境下WebView中拦截所有请求并替换URL示例详解

    2022-05-26 06:21:56
  • Kotlin类对象class初始化与使用

    2023-08-09 22:00:52
  • java中如何获取时间戳的方法实例

    2021-06-14 15:29:16
  • C#带你玩扫雷(附源码)

    2021-11-04 05:54:23
  • 基于java中两个对象属性的比较

    2023-08-23 05:25:02
  • 解决myBatis返回integer值的问题

    2022-07-23 18:17:38
  • Android实现通讯录效果——获取手机号码和姓名

    2021-10-25 11:53:59
  • Java Lambda表达式与匿名内部类的联系和区别实例分析

    2022-01-05 21:10:22
  • 剑指Offer之Java算法习题精讲求和篇

    2022-04-07 14:05:36
  • 基于springboot实现redis分布式锁的方法

    2023-06-16 01:36:56
  • C# Winform 调用系统接口操作 INI 配置文件的代码

    2023-03-04 11:49:54
  • Java 实现RSA非对称加密算法

    2021-08-19 16:27:51
  • Java使用Freemarker页面静态化生成的实现

    2022-07-24 08:48:42
  • C#创建不规则窗体的4种方式详解

    2021-08-08 09:00:43
  • Spring Retry 重试实例详解

    2021-07-15 22:43:26
  • asp之家 软件编程 m.aspxhome.com