如何在按钮单击事件中执行if-else条件语句

本文关键字:执行 if-else 条件 语句 事件 按钮 单击 | 更新日期: 2023-09-27 18:13:40

我这里有个情况。我需要根据用户在窗口表单上提供的内容将值插入表中。如果一个好不存在,超过必要的是获得的,多余的必须输入到一个名为"BulkAvailable"的表中,这是一个大存在于我的代码,当我注释这部分代码运行良好。请查看下面的代码

           try
            {
                SqlConnection con = new SqlConnection("Data Source=PV10''LOCALSERVER;Initial Catalog=SmallSoftwareDB;Integrated Security=True;Pooling=False");
                con.Open();
                float a = float.Parse(textBox8.Text, System.Globalization.CultureInfo.InvariantCulture);
                int b = int.Parse(textBox9.Text);
                float c = a * b;
                var T = c.ToString(System.Globalization.CultureInfo.InvariantCulture);
                float x = float.Parse(textBox4.Text, System.Globalization.CultureInfo.InvariantCulture);
                int z = int.Parse(textBox3.Text);
                float y = x * z;
                var total = y.ToString(System.Globalization.CultureInfo.InvariantCulture);
                int d = b - z;
                string uba = "insert into BulkSale(ProductName, ProductSource, Date, Quantity, Type, UnitPrice, Total, Nature) values('" + textBox1.Text + "', '" + textBox2.Text + "', '" + dateTimePicker1.Value + "', '" + textBox3.Text + "', '" + textBox6.Text + "', '" + textBox4.Text + "', '" + textBox5.Text + "', '"+textBox7.Text+"')";
                string A = "insert into BulkInput(ProductName, ProductSource, Date, Quantity, Type, UnitPrice, Total, Nature) values('"+textBox1.Text+"','"+textBox2.Text+"','"+dateTimePicker1.Value+"','"+b+"','"+textBox6.Text+"','"+a+"','"+c+"', '"+textBox7.Text+"')";
                SqlCommand cmd = new SqlCommand(uba, con);
                SqlCommand X = new SqlCommand(A, con);
                cmd.ExecuteNonQuery();
                X.ExecuteNonQuery();
                try
                {
                    if (int.Parse(textBox9.Text) > int.Parse(textBox3.Text))
                    {
                        string B = "insert into BulkAvailable(ProductSource,ProductName,Date,Quantity,Type) values('" + textBox2.Text + "','" + textBox1.Text + "','" + dateTimePicker1.Text + "','" + d + "','" + textBox6.Text + "')";
                        SqlCommand Bc = new SqlCommand(B, con);
                        Bc.ExecuteNonQuery();
                    }
                    else
                    {
                        MessageBox.Show("You successfully Bought and Sold", " ", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                }
                catch (Exception aze)
                {
                    MessageBox.Show(aze.Message, " ", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                MessageBox.Show("Operation Successfully Executed", " ", MessageBoxButtons.OK, MessageBoxIcon.Information);
                con.Close();
            }
            catch (Exception er) 
            {
                MessageBox.Show(er.Message, " ", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }

当我运行代码时,它返回一个异常消息:"二进制数据字符串将被截断。语句已被终止"

如何在按钮单击事件中执行if-else条件语句

您应该检查数据库中的字段。此错误表示您正在尝试插入长度超过字段边界的字符串。

因此,例如,如果您有数据库字段ProductName定义为varchar(50),并且您试图插入具有52个字符的值,您将收到此错误。

我们不能告诉你具体发生在哪个领域,你应该手动检查。您可以尝试在DB中执行查询,看看错误是否给出了字段名,但在过去,这种情况不会发生。

你应该实现一些关于你的字段的验证检查,如果他们超过一些Length显示错误消息或使用Substring方法切断字符串