C# 连接数据库 conn.open异常处理

原来代码是

string connetStr = "server=127.0.0.1;port=3306;user=root;password=123456; database=nh";
onn = new MySqlConnection(connetStr);

try
                {
                    conn.Open();//打开通道,建立连接,可能出现异常,使用try catch语句
                }
                catch (MysqlException ex)
                {
                    this.WriteLog("循环水conn:" + ex.Message);
                }

运行到Open() 直接退出 没有异常推出。看网上解释到 MysqlException 可能无法全面捕获异常 修改MysqlException 为Exception

终于捕获到异常为 给定关键字不在字典中。网上解释为字符集不匹配 connStr添加charset=utf8(mysql 字符集早已设置为了 utf8)

 string connetStr = "server=127.0.0.1;port=3306;user=root;password=123456; database=nh;charset=utf8";

            conn = new MySqlConnection(connetStr);
            if (conn.State != ConnectionState.Open)
            {
                try
                {
                    conn.Open();//打开通道,建立连接,可能出现异常,使用try catch语句
                }
                catch (Exception ex)
                {
                    this.WriteLog("循环水conn:" + ex.Message);
                }
            }修改后无异常,运行正常。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你使用以下代码来连接数据库进行登录操作: ```csharp using System.Data.SqlClient; // 创建一个 SqlConnection 对象 SqlConnection conn = new SqlConnection("Data Source=localhost;Initial Catalog=YourDatabase;User ID=YourUsername;Password=YourPassword"); try { // 打开数据库连接 conn.Open(); // 定义 SQL 查询语句 string sql = "SELECT * FROM Users WHERE Username=@username AND Password=@password"; // 创建 SqlCommand 对象 SqlCommand cmd = new SqlCommand(sql, conn); // 添加参数 cmd.Parameters.AddWithValue("@username", txtUsername.Text); cmd.Parameters.AddWithValue("@password", txtPassword.Text); // 执行查询 SqlDataReader reader = cmd.ExecuteReader(); // 判断是否存在该用户 if (reader.HasRows) { MessageBox.Show("登录成功!"); } else { MessageBox.Show("用户名或密码错误!"); } // 关闭 SqlDataReader 对象 reader.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { // 关闭数据库连接 conn.Close(); } ``` 其中,`Data Source` 参数指定数据库服务器名称,`Initial Catalog` 参数指定要连接的数据库名称,`User ID` 参数指定登录数据库所使用的用户名,`Password` 参数指定登录数据库所使用的密码。 接着,使用 `SqlConnection` 类创建一个数据库连接对象,然后在 `try` 代码块中打开数据库连接,定义 SQL 查询语句并创建 `SqlCommand` 对象,添加参数,最后执行查询并判断是否存在该用户。完成后,关闭 `SqlDataReader` 对象和数据库连接。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值