在循环中:我想把XML查找出来的值插入到数据库。这个应该怎么拼接?求指点。
                        foreach (XmlNode xn2 in xn1)
                        {                            StringBuilder strSql = new StringBuilder();
                            StringBuilder strSql1 = new StringBuilder();
                            StringBuilder strSql2 = new StringBuilder();
                            if (xn2.Name == "A")
                            {
                                // TPID = xn2.InnerText;
                                 strSql1.Append("TPID,");
                                 strSql2.Append("" + xn2.InnerText + ",");
                                
                            }
                            if (xn2.Name == "B")
                            {
                                strSql1.Append("ZFID,");
                                strSql2.Append("" + xn2.InnerText + ",");
                                //  ZFID = xn2.InnerText;   
                            }
                            if (xn2.Name == "SLTID")
                            {
                                string SLTID = xn2.InnerText;
                            }
                            if (xn2.Name == "C")
                       
                            strSql.Append("insert into AA(");
                            strSql.Append(strSql1.ToString().Remove(strSql1.Length - 1));
                            strSql.Append(")");
                            strSql.Append(" values (");
                            strSql.Append(strSql2.ToString().Remove(strSql2.Length - 1));
                            strSql.Append(")");
                            int rows = DbHelperSQL.ExecUpdateOracle(strSql.ToString(), conn);
                        }

解决方案 »

  1.   

    你这个有问题吗,你把strSql显示出来看看对不对啊
      

  2.   

    不对。这个在foreach一次,strsql就会变一次,而我想要的结果是:
    strsql="insert into values ('A','B')"这样的。
      

  3.   

    你看你的strSql 在循环里面,如果你想改变的是插入的参数,那么你要把"insert into values(" 放在循环外面,然后在循环里面拼接插入参数
      

  4.   

    把xml转换成 DataSet 利用 ado.net 把dataset放到数据库里去