SqlConnection con = DB.createConnection();    
        SqlCommand cmd = new SqlCommand("insert into photo values(@userID,@photoTitle,@photoUrl,@visitNum,@upLoadTime,@userName)", con);
        cmd.Parameters.AddWithValue("@userID", uid);
        cmd.Parameters.AddWithValue("@photoTitle", txtPhotoTitle.Text);
        cmd.Parameters.AddWithValue("@photoUrl", fileName);
        cmd.Parameters.AddWithValue("@visitNum", "0");
        cmd.Parameters.AddWithValue("@upLoadTime", txtPhotoTime.Text);
        cmd.Parameters.AddWithValue("@userName", (string)Session["userName"]);
        con.Open();
        cmd.ExecuteNonQuery();
        con.Close();
这是我的数据库插入代码,列名我敢跟定没错,请问是什么问题,谢谢啦

解决方案 »

  1.   

    photo 表中的字段不止 6个.
      

  2.   

    为什么不做成SP?不知道是不是session返回的是NULL会出错,你看一下还有,在DB那边,如果你的表有的列不能为空,又没有设默认值,你插入的时候就必须写这个列
      

  3.   

    穆白兄,你怎么知道photo表字段不止6个?太厉害了,确实还有一个关键字,photoID,是自增的,是那个原因吗
      

  4.   

    把字段名称写全insert into 表(userID,phototitle,....
      

  5.   

    提示信息已经很明确了而且插入语句最好不要写成 insert into 表名 values(值1,值2)而应该写成 insert into 表名(字段1,字段2) values(值1,值2)这样即使数据库里增加了字段,你的插入语句也不会错