将 C# 连接到 MYSQL 数据库

本文关键字:MYSQL 数据库 连接 | 更新日期: 2023-09-27 17:56:43

所以我一直在尝试将 C# 窗口连接到 MYSQL 数据库,我尝试了我在网上找到的许多不同方法,但似乎都没有奏效。 这是我的代码请帮助(请记住,这是我以前第一次使用数据库)。

这是连接类

class DbConnect
{
    public static void DBConnect()
    {
        string connstr = 
        "server=localhost;user=root;database=login;port=3306;password=Password";
        MySqlConnection conn = new MySqlConnection(connstr);
        try
        {
            conn.Open();
        }
        catch
        {
            Console.WriteLine("went rong");
        }
    }
}

这是我使用的窗口表单

private void btnenter_Click(object sender, EventArgs e)
 {
      DbConnect.DBConnect();
      MySqlCommand query = new MySqlCommand("INSERT INTO logininfo (username, 
      password) VALUES(@username, @password");
        try
        {
            query.Parameters.AddWithValue("@username", txtusername.Text);
            query.ExecuteNonQuery();
            MessageBox.Show("S");
        }
        catch (Exception )
        {
            MessageBox.Show("something went wrong");
        }
        finally
        {
            DbConnect.DBClose();
        }
    }

将 C# 连接到 MYSQL 数据库

用户使用 Uid 在 MySQL 连接字符串中传递。因此,连接字符串应如下所示:

"server=localhost;Uid=root;database=login;port=3306;password=tro63jans";

您可能会看到:MySQL 连接字符串。

您还应该捕获某个对象中的异常,以便您可以获取有关异常的详细信息。目前,您没有显示来自异常的任何有用消息。

catch (Exception ex) //at least
{
    MessageBox.Show("something went wrong: " + ex.ToString());
}

你在这里遇到的一个问题是你没有将MysqlCommand的连接属性设置为你之前创建的MySqlConnection。

  1. 更改 DBConnect() 以返回您的 MySqlConnection。
  2. 将 MySqlCommand 的"连接"属性设置为返回值。

伪代码

MySqlConnection conn = DBConnect.DBConnect();
 MySqlCommand command = new MySqlCommand(commandStr, conn);
command.ExecuteNonQuery();
conn.Close();