Арифметическая операция привела к ошибке переполнения C#
Здравствуйте, я использую C# для создания приложения для подключения к удаленному серверу MySQL.
Вот код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace login
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (tryLogin(textBox1.Text, textBox2.Text) == true)
{
MessageBox.Show("Authed!");
}
else
{
MessageBox.Show("Auth Failure.");
}
}
public bool tryLogin(string username, string password)
{
MySqlConnection con = new MySqlConnection("host=myhostname;user=myusername;password=mypassword;database=mydatabase;");
MySqlCommand cmd = new MySqlCommand("SELECT * FROM test WHERE username = '" + username + "' AND password = '" + password + "';");
cmd.Connection = con;
con.Open();
MySqlDataReader reader = cmd.ExecuteReader();
if (reader.Read() != false)
{
if (reader.IsDBNull(0) == true)
{
cmd.Connection.Close();
reader.Dispose();
cmd.Dispose();
return false;
}
else
{
cmd.Connection.Close();
reader.Dispose();
cmd.Dispose();
return true;
}
}
else
{
return false;
}
}
}
}
Это показывает следующую ошибку:
"OverflowException не обработан
Арифметическая операция привела к переполнению
Я не использую здесь никаких арифметических операций. Любая помощь???
1 ответ
Проверить test
стол в mysql server
,
Убедитесь, что все поля имеют допустимые значения в username
а также password
колонны.
ОБНОВИТЬ
попробуйте включить опцию "Use Pipe=false;"
, с вашей строкой соединения. Затем он откроет соединение просто отлично.
Я надеюсь, что это поможет вам.