0

こんにちは、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 は処理されませんでした

算術演算でオーバーフローが発生しました"

ここでは算術演算は使用しません。何か助けて???

4

1 に答える 1

0

testの表を確認してくださいmysql server

すべてのフィールドのusernameおよびpassword列に有効な値があることを確認してください。

アップデート

接続文字列にオプションを含めてみて"Use Pipe=false;"ください。その後、接続が正常に開きます。

これがお役に立てば幸いです。

于 2013-01-16T13:19:01.497 に答える