还是上次向数据库上传图片的问题,我现在把它写清楚,希望大家能帮帮我: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更新语句可能也写得不正确。
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更新语句可能也写得不正确。
解决方案 »
- 在一个C#的textbox中指定输入法状态为半角,而全角输入时是不可用
- 论坛博客 群发软件项目找人做?
- 关于局部变量问题
- 论坛的一些统计,急急,,,,
- Point[] pt=new Point[7]{Point……出错啦
- 导师给的题目,大家有没有好的测试方案,或是相关的资源,欢迎指导
- 关于类型转换的问题
- C#调用C++Dll异常
- 关于.net网站后台导出excel文件的问题,急求大神帮助!
- C#中class中必须每个成员变量或者函数前都要声明 private或者public么?不能像c++那样一个 修饰以下的多个成员变量?
- 求助!!急!!!求助BLEND3达人!关于SL中将PNG图片转换为可编辑元素的问题!
- c# dll中文件路径
不需要使用SqlParameter
否则
string sql = "update BookInfo set ImageUrl=@ImageUrl where psId=@ID";