有两个数据表,分别为table3和T_zplltable3表结构
a       b
20     XH-04
30     TY35T_zpll表结构为code    name    guige     number      leaving_number1       XH-04   7500      2
2       TY35    7500      2
3       TY01    5000      2输入框为T_zpll.number数量比如table3.b=T_zpll.name字段相等则XH-04的leaving_number字段为20-2*数量 SqlConnection sqlconn = GetsqlConn();
            sqlconn.Open();
            string str = "select *,number*" + textBox1.Text.Trim() + " as 所需数量 from T_zpll ";
            SqlCommand cmd = new SqlCommand(str, sqlconn);
            cmd.ExecuteNonQuery();
            SqlDataAdapter da = new SqlDataAdapter(str, sqlconn);
            DataSet ds = new DataSet();
            da.Fill(ds, "T_zpll");            string str1 = "select b,a,number*3 as c from table3,T_zpll where table3.b=T_zpll.name";
            SqlCommand cmd1 = new SqlCommand(str1, sqlconn);
            cmd1.ExecuteNonQuery();
            SqlDataAdapter da1 = new SqlDataAdapter(str1, sqlconn);
            DataSet ds1 = new DataSet();
            da1.Fill(ds1, "aa");
            ArrayList result = new ArrayList();
            
            for (int i = 0; i < ds1.Tables["aa"].Rows.Count; i++)
            {
                result.Add(44);
                result[i] = Convert.ToInt32(ds1.Tables["aa"].Rows[i]["a"]) - Convert.ToInt32(ds1.Tables["aa"].Rows[i]["c"]);
                string str2 = "update T_zpll set leaving_number='" + result[i] + "' where T_zpll.name='"+ds1.Tables["aa"].Rows[i]["b"]+"'";
                SqlCommand cmd2 = new SqlCommand(str2, sqlconn);
                cmd2.ExecuteNonQuery();
                
            }
            
            string str3 = "select *,number*" + textBox1.Text.Trim() + " as 所需数量 from T_zpll ";
            SqlCommand cmd3 = new SqlCommand(str, sqlconn);
            cmd3.ExecuteNonQuery();
            SqlDataAdapter da3 = new SqlDataAdapter(str, sqlconn);
            DataSet ds3 = new DataSet();
            da3.Fill(ds3, "nT_zpll");                dataGridView1.AutoGenerateColumns = true;
            dataGridView1.DataSource = ds3;
            dataGridView1.DataMember = "nT_zpll";想问问大家我写的程序可以优化么?觉得我写的程序用了三次sqlcommand对象,觉得写的有点繁琐!