数据库是access ,一个表单里面有150个文本框(50组).想提交到数据库的两个表,要求把每组的3个文本框的数值加到一起,然后再提交到一个表的50个字段,然后再把这50个数据更新到另外一个表,也就是那个表的50条数据,每条分别加上对应的数值。(表A 有50个字段,表b有2个50条数据,150个文本框的数值,每组分别相加后就是50个数据,把这50个数据,在表A 插入新的一条数据,然后再把这50个数据分别加到表B对应的数据,表b这50条数据就是表a50个字段每次提交数据的分别的和)
本人初学,请把代码写详细一些,c#的.分最高只能给100,需要的话我再给.谢谢

解决方案 »

  1.   

    int[] originalData = new int[150];
    int[] newData = new int[50];//把文本框的数据读入
    originalData[0] = Convert.ToInt32(TextBox1.Text);
    ......//转换
    for (int i = 0; i < 50; i++)
      newData[i] = originalData[i * 3] + originalData[i * 3 + 1] + originalData[i * 3 + 2];//构造Sql语句,里面应该有50个问号
    string s1 = "INSERT INTO Table1 VALUES(?, ?, ?, ......)";
    string s2 = "UPDATE Table2 SET Column1 = Column1 + ?, Column2 = Column2 + ?, ......);//创建Command对象
    OleDbCommand com1 = new OleDbCommand(s1);
    OleDbCommand com2 = new OleDbCommand(s2);//添加参数,即把问号替换成数值
    for (int i = 0; i < 50; i++)
    {
    com1.Parameters.Add(newData[i]);
    com2.Parameters.Add(newData[i]);
    }//下面连上数据库,执行这两个语句即可
    OleDbConnection conn = new OleDbConnection("连接字符串");
    com1.Connection = conn;
    conn.Open();
    com1.ExecuteNonQuery();
    conn.Close();