日期:2014-05-18  浏览次数:20728 次

foreach循环
在循环中:我想把XML查找出来的值插入到数据库。这个应该怎么拼接?求指点。
C# code
                        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);
                        }


------解决方案--------------------
你这个有问题吗,你把strSql显示出来看看对不对啊
------解决方案--------------------
你看你的strSql 在循环里面,如果你想改变的是插入的参数,那么你要把"insert into values(" 放在循环外面,然后在循环里面拼接插入参数