[英]Insert image to database with FileUpload
I want to insert an image to my database using a FileUpload control. 我想使用FileUpload控件将图像插入数据库。 I have tried to do this with the following code: 我尝试使用以下代码执行此操作:
protected void btnUploadAvatar_Click(object sender, EventArgs e)
{
if (fuAvatar.PostedFile != null && fuAvatar.PostedFile.FileName != "") ;
{
byte[] imageSize = new byte[fuAvatar.PostedFile.ContentLength];
HttpPostedFile uploadImage = fuAvatar.PostedFile;
uploadImage.InputStream.Read(imageSize, 0, fuAvatar.PostedFile.ContentLength);
SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True");
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "INSERT INTO User(image" + "VALUES (@Image) WHERE userid = @Userid";
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
SqlParameter UploadedImage = new SqlParameter("@Image", SqlDbType.Image, imageSize.Length);
UploadedImage.Value = imageSize;
SqlParameter userid = new SqlParameter("@Userid", SqlDbType.Int);
userid.Value = Convert.ToInt32(Session["userid"]);
cmd.Parameters.Add(userid);
cmd.Parameters.Add(UploadedImage);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
/*if(result > 0)
{
lblResult.Text = "Avatar lastet opp";
}*/
}
}
But i get a error on cmd.ExecuteNonQuery(); 但是我在cmd.ExecuteNonQuery()上收到一个错误。 which says: SqlException unhandled by user code, Incorrect syntax near the keyword 'User'. 其中说:用户代码未处理SqlException,关键字'User'附近的语法不正确。 I have tried both *.jpg and *.png files of under 10KB size. 我已经尝试了10KB以下的* .jpg和* .png文件。
You have a syntax error: 您有语法错误:
cmd.CommandText =
"INSERT INTO User(image" + "VALUES (@Image) WHERE userid = @Userid";
There is a missing )
and spacing there: 缺少)
和空格:
cmd.CommandText =
"INSERT INTO User(image)" + " VALUES (@Image) WHERE userid = @Userid";
Or, better yet (why concatenate at all?): 或者,更好的是(为什么要串联在一起?):
cmd.CommandText =
"INSERT INTO User(image) VALUES (@Image) WHERE userid = @Userid";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.