这是我在Visual Studio中连接到Unity3d的代码:

public void SetupSQLConnection()
{
    Debug.Log("Connection Function Started");
    if (connection == null)
    {
        Debug.Log("If connection == null");
        try
        {
            Debug.Log("Try block started");
            string connectionString = "Server=localhost;" + "Database=therapygame;" + "UID=root;" + "Password=;";
            Debug.Log("string set");
            connection = new MySqlConnection(connectionString);
            Debug.Log("new MySqlConnection");
            connection.Open();
            Debug.Log("connection");
        }
        catch (MySqlException ex)
        {
            Debug.LogError("MySQL Error: " + ex.ToString());
        }
    }
}


控制台字符串将一直打印到“字符串集”,但是其余的将不会打印。

这是Unity中的错误:


  KeyNotFoundException:给定的密钥不存在于
  字典。
  System.Collections.Generic.Dictionary`2 [System.String,System.Object] .get_Item
  (System.String键)(在
  /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150)
  MySql.Data.MySqlClient.MySqlConnectionStringBuilder.get_Database()
  MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString
  (System.String值)MySql.Data.MySqlClient.MySqlConnection..ctor
  (System.String connectionString)(包装带检查的远程调用)
  MySql.Data.MySqlClient.MySqlConnection:.ctor(字符串)
  mysql.SetupSQLConnection()(位于Assets / mysql.cs:31)fire_rate.Start()
  (位于Assets / fire_rate.cs:18)

最佳答案

尝试这个

MySqlConnectionStringBuilder connBuilder = new MySqlConnectionStringBuilder();

                    connBuilder.Server = "localhost";
                    connBuilder.UserID = "root";
                    connBuilder.Database = "therapygame";
                    connBuilder.Password = "";
                    connBuilder.OldGuids = true;

                connection = new MySqlConnection(connBuilder.ConnectionString);

关于c# - MySqlConnection =新的MySqlConnection(字符串)不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55145945/

10-10 09:37