user3855329
user3855329

Reputation: 77

Update sql database using dataset

I need some help to complete this. I have searched and tried several ways but is not enetring in my head yet. It is not homework! I am a self learner.

I managed to populate a grid selecting the table from a dropdown:

private void radDropDownList1_SelectedIndexChanged(object sender, Telerik.WinControls.UI.Data.PositionChangedEventArgs e)
    {
        if (radDropDownList1.SelectedIndex > 0)
        {
            radGridView1.Visible = true;
            label8.Text = radDropDownList1.SelectedValue.ToString();
            DataTable dt = new DataTable();

            var selectedTable = radDropDownList1.SelectedValue;  //Pass in the table name
            string query = @"SELECT * FROM " + selectedTable;

            using (var cn = new SqlConnection(connString))
            {
                cn.Open();
                try
                {
                    SqlCommand cmd = new SqlCommand(query, cn);
                    using (var da = new SqlDataAdapter(cmd))
                    {
                        da.Fill(dt);
                    }
                }
                catch (SqlException ex)
                {
                    //MessageBox.Show(ex.StackTrace);
                }
            }

            radGridView1.DataSource = dt;

    }

Now I am trying to write the event to update the sql table using the grid as datasource:

private void radGridView1_CellEndEdit(object sender, Telerik.WinControls.UI.GridViewCellEventArgs e)
    {   
        DataTable dt = (DataTable)radGridView1.DataSource;
            DataSet ds = new DataSet();
            ds.Tables[0] = dt;

        try
         {
            //**I am lost here!**
         }
        catch
        {

        }
    }

Could you please help? How can I now update the sql table?

Upvotes: 0

Views: 105

Answers (1)

T McKeown
T McKeown

Reputation: 12857

I don't really like the way you are managing the updates but... this code here will send an update statement:

        using (var cn = new SqlConnection(connString))
        {
            cn.Open();
            try
            {
                SqlCommand cmd = new SqlCommand("UPDATE YourTable SET Column = @Parm1 WHERE Col = @Parm2", cn);
                var parm1 = cmd.CreateParameter("Parm1");
                parm1.Value =  "SomeValue";
                var parm2 = cmd.CreateParameter("Parm2");
                parm2.Value =  "SomeOtherValue";
                cmd.Parameters.Add(parm1);
                cmd.Parameters.Add(parm2);
                int rowsAffected = cmd.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                //MessageBox.Show(ex.StackTrace);
            }
        }

Upvotes: 1

Related Questions