Я создаю настольное приложение, которое подключается к базе данных SQL. У меня возникли проблемы с подключением к базе данных по какой-то причине, соединение зависает бесконечно, не давая ошибки (не требует тайм-аута). Я использую XAMPP для своей базы данных. Я много искал проблему, я попытался, например, изменить строку подключения и отключить брандмауэр.MySqlConnection.Open бесконечно зависает
Вот мой код:
string connectionString = "Server=localhost;Database=typewrite;Uid=root;Pwd=";
public int signIn(string username, string password)
{
int signinNum = -1;
using (MySqlConnection conn = new MySqlConnection(connectionString))
{
try
{
conn.Open(); // here is the problem
}
catch (MySqlException ex)
{
Debug.WriteLine(ex.ToString());
return signinNum;
}
using (MySqlCommand cmd = conn.CreateCommand())
{
try
{
cmd.CommandText = @"SELECT 'USER_id' WHERE USER_name = @name AND pass = @passw";
cmd.Parameters.AddWithValue("@name", username);
cmd.Parameters.AddWithValue("@passw", password);
MySqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
signinNum = reader.GetInt32(0);
}
}
catch (MySqlException ex)
{
return signinNum;
}
}
}
return signinNum;
}
Я попытался diffrent вариации этого не преобладают. Я знаю, что должен использовать mutli thredding, чтобы он не остановил мое приложение, как бы мне хотелось получить соединение с базой данных, прежде чем я пойду дальше.
И, кроме того, я сделал что-то подобное раньше, и это связано с проблемой.
Никогда не храните пароли в виде простого текста – Plutonix
На самом деле вопрос не задан, как я уже сказал, но я, безусловно, согласен. – user2366842
Я знаю, что я не собираюсь хранить пароль в текстовом поле, это код, который только там проверяет соединение. –