юнити ошибка KeyNotFoundException
Добавлено: 04 июн 2018, 20:09
Прошу о помощи, срочно нужно закончить проект, а я не могу подключится к базе
ошибка:
Код:
выручите плиз, не могу разобраться с такой ошибкой
ошибка:
KeyNotFoundException: The given key was not present in the dictionary.
System.Collections.Generic.Dictionary`2[System.String,MySql.Data.MySqlClient.CharacterSet].get_Item (System.String key) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150)
MySql.Data.MySqlClient.CharSetMap.GetCharacterSet (DBVersion version, System.String CharSetName)
MySql.Data.MySqlClient.MySqlField.SetFieldEncoding ()
MySql.Data.MySqlClient.MySqlField.set_CharacterSetIndex (Int32 value)
MySql.Data.MySqlClient.NativeDriver.GetColumnData (MySql.Data.MySqlClient.MySqlField field)
MySql.Data.MySqlClient.NativeDriver.GetColumnsData (MySql.Data.MySqlClient.MySqlField[] columns)
MySql.Data.MySqlClient.Driver.GetColumns (Int32 count)
MySql.Data.MySqlClient.ResultSet.LoadColumns (Int32 numCols)
MySql.Data.MySqlClient.ResultSet..ctor (MySql.Data.MySqlClient.Driver d, Int32 statementId, Int32 numCols)
MySql.Data.MySqlClient.Driver.NextResult (Int32 statementId)
MySql.Data.MySqlClient.MySqlDataReader.NextResult ()
MySql.Data.MySqlClient.MySqlDataReader.Close ()
MySql.Data.MySqlClient.MySqlCommand.ResetReader ()
MySql.Data.MySqlClient.MySqlCommand.ExecuteReader (CommandBehavior behavior)
MySql.Data.MySqlClient.MySqlCommand.ExecuteReader ()
(wrapper remoting-invoke-with-check) MySql.Data.MySqlClient.MySqlCommand:ExecuteReader ()
AllFunction.GetScoreBD () (at Assets/AllFunction.cs:15)
AllFunction.OnGUI () (at Assets/AllFunction.cs:30)
Код:
Синтаксис:
Используется csharp
using UnityEngine;
using MySql.Data.MySqlClient;
public class AllFunction : MonoBehaviour
{
static string connStr = "host=127.0.0.1;port=3306;user=logbd;password=passbd;database=gurkina";
string player = "";
int score = 0;
void GetScoreBD() {
MySqlConnection con = new MySqlConnection(connStr);
MySqlCommand cmd = new MySqlCommand("SELECT * FROM students WHERE id = 0");
cmd.Connection = con;
con.Open();
MySqlDataReader reader = cmd.ExecuteReader(); //тут 1 ошибка
while (reader.Read())
{
player = reader["id"].ToString();
score = (int)reader["id_code"];
}
cmd.Connection.Close();
cmd.Dispose();
con.Close();
}
private void OnGUI()
{
GUI.Label(new Rect(10, 10, 50, 200), "Player: " + player);
if (GUI.Button(new Rect(10,60,40,40),"Button"))
{
GetScoreBD(); //тут 2 ошибка
}
}
}
using MySql.Data.MySqlClient;
public class AllFunction : MonoBehaviour
{
static string connStr = "host=127.0.0.1;port=3306;user=logbd;password=passbd;database=gurkina";
string player = "";
int score = 0;
void GetScoreBD() {
MySqlConnection con = new MySqlConnection(connStr);
MySqlCommand cmd = new MySqlCommand("SELECT * FROM students WHERE id = 0");
cmd.Connection = con;
con.Open();
MySqlDataReader reader = cmd.ExecuteReader(); //тут 1 ошибка
while (reader.Read())
{
player = reader["id"].ToString();
score = (int)reader["id_code"];
}
cmd.Connection.Close();
cmd.Dispose();
con.Close();
}
private void OnGUI()
{
GUI.Label(new Rect(10, 10, 50, 200), "Player: " + player);
if (GUI.Button(new Rect(10,60,40,40),"Button"))
{
GetScoreBD(); //тут 2 ошибка
}
}
}
выручите плиз, не могу разобраться с такой ошибкой