string strSql = string.Format("insert into Special_Order (SpecialProduct_Name,SpecialProduct_Pricet,SpecialProduct_BuyQuantity,SpecialProduct_TotalPrice,SpecialProduct_Time,username,id,SpeciaProduct_ID) values ({0},{1},'{2}','{3}','{4}','{5}','{6}','{7}',1);", count, float.Parse(price) * int.Parse(count), DateTime.Now.ToString(), Session["SpecialOrder_ID"]);索引(从零开始)必须大于或等于零,且小于参数列表的大小。请问哪儿错了

解决方案 »

  1.   

    总共有8个站位符,你才写了4个参数,当然不对了
     string strSql = string.Format("insert into Special_Order (SpecialProduct_Name,SpecialProduct_Pricet,SpecialProduct_BuyQuantity,SpecialProduct_TotalPrice,SpecialProduct_Time,username,id,SpeciaProduct_ID) values ({0},{1},'{2}','{3}','{4}','{5}','{6}','{7}',1);", 1, 2, 3,4,5,6,7,8 );
      

  2.   

    你表中才8个字段,value里面却有9个位置,不对等
      

  3.   

    请把,1去掉看看。
    还有你的count, float.Parse(price) * int.Parse(count), DateTime.Now.ToString(), Session["SpecialOrder_ID"],这些值给的不够,你要插入的是8个值,但是你这里确实4个。
    都测试下吧!
      

  4.   

    8<>9 列和参数不一致。
      

  5.   

      string strSql = string.Format("insert into Special_Order (SpecialProduct_Name,SpecialProduct_Pricet,SpecialProduct_BuyQuantity,SpecialProduct_TotalPrice,SpecialProduct_Time,username,id,SpeciaProduct_ID) values ({0},{1},'{2}','{3}','{4}','{5}','{6}','{7}',1);", count, float.Parse(price) * int.Parse(count), DateTime.Now.ToString(), Session["SpecialOrder_ID"]);
    个数必须对应,类型最好也对应