亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何解決我的代碼中的當前問題?

如何解決我的代碼中的當前問題?

C#
Cats萌萌 2022-11-21 16:13:54
我很難確定這段代碼中的具體問題是什么。我是初學者,我還在學習 mysql 和 c#。我該如何解決這個問題?else{    int countMemberCat = 0;    helper.openConnection();    string query2 = "SELECT Count (*) as 'NoOfMembershipRate' FROM membershiprate WHERE memberrate_desc = @mdesc";    MySqlCommand cmd2 = new MySqlCommand(query2, helper.getConnection());    cmd2.Parameters.AddWithValue("mdesc", txtMemRateDesc.Text);    MySqlDataReader reader = cmd2.ExecuteReader();    while (reader.Read())    {        countMemberCat = int.Parse(reader["NoOfMembershipRate"].ToString());    }    helper.CloseConnection();    if (countMemberCat > 0)    {        MessageBox.Show("Membership Category already exist!");    }    else    {        try        {            double price = double.Parse(txtMemRate.Text);            ClearErrorMessage();            DialogResult dr = MessageBox.Show("Are you sure you want to add new membership category?", "Add?", MessageBoxButtons.YesNo, MessageBoxIcon.Question);            if (dr == DialogResult.Yes)            {                if (helper.openConnection())                {                    string query = "INSERT INTO `membershiprate` (`memberrate_desc`, memberrate_id, `memberrate_price`, memberrate_count) VALUES (@mdesc, memberrate_id, @mprice, memberrate_id)";                    MySqlCommand cmd = new MySqlCommand(query, helper.getConnection());                    cmd.Parameters.AddWithValue("mdesc", txtMemRateDesc.Text);                    cmd.Parameters.AddWithValue("mprice", txtMemRate.Text);                    cmd.ExecuteNonQuery();                    helper.CloseConnection();                    this.Close();                    MessageBox.Show("Successfully added!");                }這就是問題開始的地方。它在這里說它有一個未處理的 mysql 異常。MySql.Data.dll 中出現類型為“MySql.Data.MySqlClient.MySqlException”的未處理異常附加信息:您的 SQL 語法有誤;檢查與您的 MariaDB 服務器版本對應的手冊,了解在第 1 行的“*) 附近使用的正確語法作為‘NoOfMembershipRate’ FROM membershiprate WHERE memberrate_desc =‘Adult’”
查看完整描述

1 回答

?
忽然笑

TA貢獻1806條經驗 獲得超5個贊

我認為下面這行有問題。


 string query = "INSERT INTO `membershiprate` (`memberrate_desc`, memberrate_id, `memberrate_price`, memberrate_count) VALUES (@mdesc, memberrate_id, @mprice, memberrate_id)";

插入查詢中未設置 memberrate_id 和 memberrate_count 值。


所以,請在檢查后插入兩列。


string query = "INSERT INTO `membershiprate` (`memberrate_desc`, `memberrate_price`) VALUES (@mdesc,  @mprice)";

 MySqlCommand cmd = new MySqlCommand(query, helper.getConnection());

                            cmd.Parameters.AddWithValue("mdesc", txtMemRateDesc.Text);

                            cmd.Parameters.AddWithValue("mprice", txtMemRate.Text);


                            cmd.ExecuteNonQuery();

                            helper.CloseConnection();



                            this.Close();

                            MessageBox.Show("Successfully added!");

請檢查此解決方案。


查看完整回答
反對 回復 2022-11-21
  • 1 回答
  • 0 關注
  • 110 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號