C# code

Hi guys ,

I wrote some button code to updating data column.

Actually, what I'm trying to do is when I click the Button update it will copy over what I selected in the select status dropbox to the textbox Current status then update the column.

here is my code and also I attached screenshot.

//update button updating statu send email
        private void button1_Click(object sender, EventArgs e)
        {

            string conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";
            string Query = "update rmsmasterdbtest.dbo.serial set serialnumber='" + this.txtsn.Text + "' ,serialnumber3='" + this.txtstatus.Text + "' where serialnumber='" + this.txtsn.Text + "' ;";

            
            SqlConnection Myconn = new SqlConnection(conn);
            SqlCommand cmd = new SqlCommand(Query, Myconn);
            SqlDataReader Reader;

            try
            {
                if (combStatus.SelectedIndex == 0)
                {
                    txtstatus.Text = "OK";
                }
                if (combStatus.SelectedIndex == 1)
                {
                    txtstatus.Text = "Damaged";
                }
                if (combStatus.SelectedIndex == 2)
                {
                    txtstatus.Text = "Repair in Progress";
                }
                if (combStatus.SelectedIndex == 3)
                {
                    txtstatus.Text = "Repaired";
                }
                if (combStatus.SelectedIndex == 4)
                {
                    txtstatus.Text = "Loaner";
                }

                combStatus.Items.Add(txtstatus.Text);



                try
                {
                    Myconn.Open();
                    Reader = cmd.ExecuteReader();
                    MessageBox.Show("Updated Status");



                    while (Reader.Read())
                    {

                    }




                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                Myconn.Close();
            }

Open in new window

Capture.JPG
LVL 1
Moti Mashiah.NET DeveloperAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
jorge_torizConnect With a Mentor Research & Development ManagerCommented:
Ups, sorry, I wrote the code on Notepad and I didn't notice that, here is the fixed code:
//update button updating statu send email
        private void button1_Click(object sender, EventArgs e)
        {

            string conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";

            SqlConnection Myconn = new SqlConnection(conn);

            
            try
            {
                if (combStatus.SelectedIndex == 0)
                {
                    txtstatus.Text = "OK";
                }
                if (combStatus.SelectedIndex == 1)
                {
                    txtstatus.Text = "Damaged";
                }
                if (combStatus.SelectedIndex == 2)
                {
                    txtstatus.Text = "Repair in Progress";
                }
                if (combStatus.SelectedIndex == 3)
                {
                    txtstatus.Text = "Repaired";
                }
                if (combStatus.SelectedIndex == 4)
                {
                    txtstatus.Text = "Loaner";
                }

                combStatus.Items.Add(txtstatus.Text);



                try
                {
                    string Query = "update rmsmasterdbtest.dbo.serial set serialnumber='" + this.txtsn.Text + "' ,serialnumber3='" + this.txtstatus.Text + "' where serialnumber='" + this.txtsn.Text + "' ;";
                    SqlCommand cmd = new SqlCommand(Query, Myconn);
                    SqlDataReader Reader;


                    Myconn.Open();
                    Reader = cmd.ExecuteReader();
                    MessageBox.Show("Updated Status");



                    while (Reader.Read())
                    {

                    }




                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                Myconn.Close();
            } 

Open in new window

0
 
Jerry MillerCommented:
Are you getting error messages or is it not updating the data?

The one thing that I see is that you should test the textbox values (this.txtsn.Text  for example) to make sure that they have a value before sending them in a query.
0
 
Moti Mashiah.NET DeveloperAuthor Commented:
I don't get any error message I just have to click twice on the update button to get it update in the database. the first click don't update the database.

 string conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";
            string Query = "update rmsmasterdbtest.dbo.serial set serialnumber='" + this.txtsn.Text + "' ,serialnumber3='" + this.txtstatus.Text + "' where serialnumber='" + this.txtsn.Text + "' ;";

            
            SqlConnection Myconn = new SqlConnection(conn);
            SqlCommand cmd = new SqlCommand(Query, Myconn);
            SqlDataReader Reader;

           
                if (combStatus.SelectedIndex == 0)
                {
                    txtstatus.Text = "OK";
                }
                if (combStatus.SelectedIndex == 1)
                {
                    txtstatus.Text = "Damaged";
                }
                if (combStatus.SelectedIndex == 2)
                {
                    txtstatus.Text = "Repair in Progress";
                }
                if (combStatus.SelectedIndex == 3)
                {
                    txtstatus.Text = "Repaired";
                }
                if (combStatus.SelectedIndex == 4)
                {
                    txtstatus.Text = "Loaner";
                }

                combStatus.Items.Add(this.txtstatus.Text);



                try
                {
                    Myconn.Open();
                    Reader = cmd.ExecuteReader();
                    MessageBox.Show("Updated Status");

Open in new window

0
What Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

 
jorge_torizResearch & Development ManagerCommented:
Can you try with this one?
//update button updating statu send email
        private void button1_Click(object sender, EventArgs e)
        {

            string conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";

            SqlConnection Myconn = new SqlConnection(conn);

            
            try
            {
                if (combStatus.SelectedIndex == 0)
                {
                    txtstatus.Text = "OK";
                }
                if (combStatus.SelectedIndex == 1)
                {
                    txtstatus.Text = "Damaged";
                }
                if (combStatus.SelectedIndex == 2)
                {
                    txtstatus.Text = "Repair in Progress";
                }
                if (combStatus.SelectedIndex == 3)
                {
                    txtstatus.Text = "Repaired";
                }
                if (combStatus.SelectedIndex == 4)
                {
                    txtstatus.Text = "Loaner";
                }

                combStatus.Items.Add(txtstatus.Text);



                try
                {
                    string Query = "update rmsmasterdbtest.dbo.serial set serialnumber='" + this.txtsn.Text + "' ,serialnumber3='" + this.txtstatus.Text + "' where serialnumber='" + this.txtsn.Text + "' ;";
                    SqlCommand cmd = new SqlCommand(Query, Myconn);
                    SqlDataReader Reader;


                    Myconn.Open();
                    Reader = cmd.ExecuteReader();
                    MessageBox.Show("Updated Status");



                    while (Reader.Read())
                    {

                    }




                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                Myconn.Close();
            }

Open in new window

0
 
Moti Mashiah.NET DeveloperAuthor Commented:
After I wrote your code it asking me for catch " expected catch or finally"
0
 
Moti Mashiah.NET DeveloperAuthor Commented:
Thank you very much now it works.

I have another small issue when I select some message from the dropbox and and click update it is update the database and duplicating the combobox item
0
 
jorge_torizResearch & Development ManagerCommented:
Are you working on a windows application or web application?

I need to know it because the ComboBox is different from DropDownList.
0
 
Moti Mashiah.NET DeveloperAuthor Commented:
windows form application
0
 
jorge_torizConnect With a Mentor Research & Development ManagerCommented:
Instead of:
combStatus.Items.Add(txtstatus.Text);

Open in new window


Put:
if (combStatus.Items.IndexOf(txtstatus.Text) == -1)
    combStatus.Items.Add(txtstatus.Text);

Open in new window

0
 
Moti Mashiah.NET DeveloperAuthor Commented:
Great help solved my problem
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.