【问题标题】:I can't connect MySql C# [duplicate]我无法连接 MySql C# [重复]
【发布时间】:2014-04-25 03:36:31
【问题描述】:
private void keepdata()
    {

        string connString = "Server=localhost;Database=databaserfid;Uid=root;Pwd=12345;";
        using (mcon = new MySqlConnection(connString))
        using (cmd = mcon.CreateCommand())
        {
            try
            {
                mcon.Open();
                MessageBox.Show("Connect");
            }
            catch
            {
                MessageBox.Show("Not Connect");
            }
        }
    }

这段代码我无法连接MySql

状态显示“关闭”

没有错误列表

我已经安装了 mysql 连接器并添加了引用 Mysql.Data

如何解决这个问题? (我需要状态打开)

【问题讨论】:

  • 第一个 "using" 语句中缺少花括号
  • 愚蠢的问题,但只是为了澄清一下,你有所有的 MySqlClient 引用吗? using MySQL.Data.MySqlClient
  • @Sunny 当你使用多个 using 语句时,你不需要花括号,除了最后一个,如果它有多个语句(一个 using 后面可以跟一个语句(包括using)或代码块)
  • @MarkRotteveel 谢谢马克,还不知道这个。我很感激!
  • 检查你的连接字符串。

标签: c# mysql


【解决方案1】:

看起来您的使用没有正确支撑。试试下面的那个。不过我无法测试这个

private void keepdata()
{

 string connString = "Server=localhost;Database=databaserfid;Uid=root;Pwd=12345;";
 using (MySqlConnection mcon = new MySqlConnection(connString))
 {   
    using (cmd = mcon.CreateCommand())
    {
        try
        {
            mcon.Open();
            MessageBox.Show("Connect");
        }
        catch
        {
            MessageBox.Show("Not Connect");
        }
    }
  }
}

【讨论】:

  • 如果是这样,会不会出现编译错误?
  • 我已经在使用但不能
【解决方案2】:

我使用了与您相同的代码。只是做了一些小改动,它对我有用。看看下面的代码:

private void keepdata()
{
    MySqlCommand cmd;

    string connString = "server=[Server_Name];database=[Database_Name];user id=[User_Id];pwd=[Password];default command timeout=30000";
    using (var mcon = new MySqlConnection(connString))
    {
        using (cmd = mcon.CreateCommand())
        {
            try
            {
                mcon.Open();
                MessageBox.Show("Connect");

            }
            catch
            {
                MessageBox.Show("Not Connect");
            }
        }
        mcon.Close();
    }
}

【讨论】:

    【解决方案3】:

    使用上述参考 使用 MySql.Data.MySqlClient;

    public static string con_str = "Server=localhost;Database=databaserfid;Username=root;Password=12345";
            static MySqlConnection con = new MySqlConnection(con_str);
            public static MySqlConnection connection()
            {
                try
                {
    
                con.Open();
    
            }            
            catch (MySqlException e)
            {
                MessageBox.Show(e.ToString());
            }
            catch (ArgumentException e)
            {
                MessageBox.Show(e.ToString());
            }
            return con;
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多