簡體   English   中英

我試圖使用C#txtbox表單在mysql數據庫中插入數據,但總是出現錯誤?

[英]I tried to insert data in mysql database using C# txtbox form but I always got an error?

我認為到目前為止這是我的代碼,但我確實不知道這是什么問題。 我使用txtbox制作了用於用戶名和密碼的注冊表,並用MD5加密了密碼,我嘗試刪除MD5加密,以為可能是問題,但是當我刪除它時仍然會出現問題。

ApareceCrudLib a = new ApareceCrudLib("localhost", "root", "",  "cashieringdb");

            string query = "INSERT INTO register (username,password) " +
                          "VALUES(" +
                           "'" + txtUser.Text + "'," +
                           "MD5('" + txtPass.Text +"')";
            a.mysqlInsert(query);
            MessageBox.Show("Account has been registered!");
            this.Close();

這是我的mysqlInsert類ApareceCrudLib的代碼

 public void mysqlInsert(string query)
        {
            try
            {
                if (this.Open())
                {
                    MySqlCommand cmd = new MySqlCommand(query, conn);
                    cmd.ExecuteNonQuery();
                    this.Close();
                    System.Windows.Forms.MessageBox.Show("Record Inserted!");
                }
            }
            catch { this.Close(); System.Windows.Forms.MessageBox.Show("INSERT Record Error!"); }
            return;
        }

如您所見,我使用對話框捕獲了錯誤,因此基本上,如果該對話框將無法插入或連接到數據庫,則消息框將顯示“ INSERT Record Error!”。 順便說一句,Visual Studio僅在插入數據庫時​​沒有錯誤。

我認為插入數據庫字符串查詢的代碼中某處錯誤=“ INSERT

INTO register (username,password) " +
                              "VALUES(" +
                               "'" + txtUser.Text + "'," +
                               "MD5('" + txtPass.Text +"')";

我可能很無聊,可能是逗號,分號。

您好!這里是錯誤的圖片!

在此處輸入圖片說明

您必須在字符串查詢中添加“)”。

string query = "INSERT INTO register (username,password) " +
                      "VALUES(" +
                       "'" + txtUser.Text + "'," +
                       "MD5('" + txtPass.Text +"'))";
                                                  ^ HERE

SQL不正確。 您有兩個打開的“(”,只有一個關閉。

為了查看實際錯誤,請嘗試此:

try
{
    if (this.Open())
    {
        MySqlCommand cmd = new MySqlCommand(query, conn);
        cmd.ExecuteNonQuery();
        this.Close();
        System.Windows.Forms.MessageBox.Show("Record Inserted!");
    }
}
catch(Exception ex)
{
    this.Close();
    System.Windows.Forms.MessageBox.Show(String.Format("INSERT Record Error! {0}", ex.Message));
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM