MySqlConnection = новый MySqlConnection (строка) не работает - PullRequest
0 голосов
/ 13 марта 2019

Вот мой код в 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.li.St.обертка remoting-invoke-with-check) MySql.Data.MySqlClient.MySqlConnection: .ctor (string) mysql.SetupSQLConnection () (в Assets / mysql.cs: 31) fire_rate.Start () (в Assets / fire_rate.cs:18)

Ответы [ 2 ]

0 голосов
/ 15 марта 2019

@ Dhansushka Dayawansha

Я внес ваше изменение и получил новую ошибку.Я счастлив, что прошел первую ошибку!Я пытался найти решения этой новой ошибки сам, но безрезультатно.Вот вывод консоли:

NullReferenceException: Object reference not set to an instance of an object
System.Data.Common.DbConnectionStringBuilder.Remove (System.String keyword)
MySql.Data.MySqlClient.MySqlConnectionStringBuilder.Remove (System.String keyword)
MySql.Data.MySqlClient.MySqlConnectionStringOption.Clean (MySql.Data.MySqlClient.MySqlConnectionStringBuilder builder)
MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SetValue (System.String keyword, System.Object value)
MySql.Data.MySqlClient.MySqlConnectionStringOption.<.ctor>b__0 (MySql.Data.MySqlClient.MySqlConnectionStringBuilder msb, MySql.Data.MySqlClient.MySqlConnectionStringOption sender, System.Object value)
MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Item (System.String keyword, System.Object value)
MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Server (System.String value)
mysql.SetupSQLConnection () (at Assets/mysql.cs:31)
fire_rate.Start () (at Assets/fire_rate.cs:18)

Строка 31 файла mysql.cs:

connBuilder.Server = "localhost";

Строка 18 файла fire_rate.cs:

GameObject.Find("MySQL").GetComponent<mysql>().SetupSQLConnection();
0 голосов
/ 13 марта 2019

попробуйте

MySqlConnectionStringBuilder connBuilder = new MySqlConnectionStringBuilder();

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

                connection = new MySqlConnection(connBuilder.ConnectionString);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...