还是上次向数据库上传图片的问题,我现在把它写清楚,希望大家能帮帮我:SQL数据库的BookInfo表中有BookId(int)字段、ImageUrl(varchar(200))字段,括号中为该字段的数据类型。其它字段我就省了,不在此一一列举。 数据库没有写存储过程,但是我下载有sqlhelper类在使用,没有做任何修改,想调用它。前台设计的控件有:FileUpload控件、一个文本框(用来输入书的BookId,更新时需将文本框的内容转换为 int类型。)、DataList控件(用来从数据库中读取显示图片)。现在我要为该表更新(两种结果都行,只要得到最终结果):
    1、上传图片到文件夹,ImageUrl字段只存图片的地址。
    2、上传图片到数据库,ImageUrl存的是图片的二进制代码。如果是这种方法,ImageUrl字段可能挨更改,需注明就可以了。
以下是我试做的代码,可是不成功。希望大家给我参考参考或者根据我写的意思给我做一个。在此谢过!if (FileUpImgUrl.HasFile)
        {
            
            string savePath = Server.MapPath("~/趣味书屋") + "/" + "bookimgs" + "/";
            if (!Directory.Exists(savePath))
                Directory.CreateDirectory(savePath);
            savePath += FileUpImgUrl.FileName;
            FileUpImgUrl.SaveAs(savePath);
            savePath = "bookimgs" + "/" + FileUpImgUrl.FileName;
            string psId = tbBookID.Text.ToString();
          string sql = "update BookInfo set ImageUrl="+"bookimgs" + "/" + FileUpImgUrl.FileName +"' where psId= tbBookID.Text.ToString()'";
                        //sql += "values() ;
            SqlParameter[] sqlParams = new SqlParameter[] { 
               
               new SqlParameter("@ImageUrl", SqlDbType.VarChar),
            };            sqlParams[0].Value = savePath;           if (sqlHelper.ExecuteNonQuery(sqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sql, sqlParams) > 0)
            DataList1.DataBind();
            else
            Response.Write("数据库操作失败");        }
提示:我的SQL更新语句可能也写得不正确。