asp.net FileUpload 控件上传文件 以二进制的形式存入数据库

图片上传事件代码如下所示:

 1         byte[] binary = upload.FileBytes;
 2             StringBuilder sqlStrSb = new StringBuilder();
 3             sqlStrSb.Append("update info set Thumb=?Imgwhere Id=200");
 4             string mySqlConStr = "Host=localhost; uid=root; pwd=123; DataBase=db";
 5             MySqlConnection mySqlCon = new MySqlConnection(mySqlConStr);
 6             mySqlCon.Open();
 7             MySqlCommand mySqlCom = new MySqlCommand();
 8             mySqlCom.CommandText = sqlStrSb.ToString();
 9             mySqlCom.Connection = mySqlCon;
10             MySqlParameter par = new MySqlParameter("?Img", MySqlDbType.VarBinary);
11             par.Value = binary;
12             mySqlCom.Parameters.Add(par);
13             int afn = mySqlCom.ExecuteNonQuery();
14             mySqlCon.Close();

注:转为二进制存入数据库的时候必须使用 MySqlDbType.VarBinary 或者 MySqlDbType.Binary 进行数据类型的限定。

图片显示代码如下所示:

 1             string mySqlConStr = "Host=host;uid=root;pwd=123;DataBase=db;";
 2             string sqlStr = "select ThumbData from info where Id=200;";
 3             MySqlConnection mySqlCon = new MySqlConnection(mySqlConStr);
 4             mySqlCon.Open();
 5             MySqlCommand mySqlComd = new MySqlCommand();
 6             mySqlComd.CommandText = sqlStr;
 7             mySqlComd.Connection = mySqlCon;
 8             MySqlDataAdapter mySqlSda = new MySqlDataAdapter();
 9             mySqlSda.SelectCommand = mySqlComd;
10             DataSet ds = new DataSet();
11             mySqlSda.Fill(ds);
12             if (ds.Tables.Count > 0)
13             {
14                 byte[] dataByte = (byte[])ds.Tables[0].Rows[0][0];
15                 Response.BinaryWrite(dataByte);
16                 Response.Flush();
17                 Response.End();
18             }
19             mySqlCon.Close();

页面显示部分:

1         <img src="ShowImage.aspx" />
时间: 2024-10-05 04:40:31

asp.net FileUpload 控件上传文件 以二进制的形式存入数据库的相关文章

在asp.net中用客户端上传控件上传文件( 需要注意的)

在asp.net中使用<inpu nme=“file” type=“file”>客户端控件上传文件, 代码大致如下: for(int i=0; i< Request.Files.Count; i++) //这里就是获取不到file的个数 { if(Request.Files[i].ContentLength > 0) { Response.Write (Request.Files [i].FileName ); } } 在我的页面中,Request.Files.Count怎么弄都是

python3、selenium、autoit3,通过flash控件上传文件

autoit.au3 #include <Constants.au3> WinWait("打开","",20); //暂停执行脚本,直到上传对话框出现 WinActive("打开") WinWaitActive("打开","",5); //激活上传窗口 ControlFocus("打开", "", "[CLASS:Edit; INSTANCE:1

.net C# FileUpload控件上传

代码 /// <summary> /// 保存 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnPro_Click(object sender, EventArgs e) { if (Session["User"] != null)

在Update Panel 控件里面添加 File Upload 控件 上传文件

Detail Information:http://www.codeproject.com/Articles/482800/FileplusUploadplusinplusUpdateplusPanel http://aspsnippets.com/Articles/Using-FileUpload-Control-inside-ASP.Net-AJAX-UpdatePanel-Control.aspx 必须设置PostBackTrigger 属性 <asp:UpdatePanel ID="

asp.net fileupload控件上传图片并预览图片

页面代码: <form id="form1" runat="server"> <div> <asp:FileUpload ID="FileUpload1" runat="server" /> <asp:Button ID="Button1" runat="server" Text="上传" Width="54px&q

vue 上传文件 并以表格形式显示在页面上

先上代码 <label for="file" class="btn">多文件上传</label> <input type="file" style="display:none;" id="file" multiple @change="file()"> 这是上传文件的按钮 <table> <tr> <th class=&q

upload控件上传json文件合并的两种方法

方法一: byte[] byte1 = FileUpload1.FileBytes; byte[] byte2 = FileUpload2.FileBytes; byte[] a1 = Encoding.UTF8.GetBytes("["); byte[] a2 = Encoding.UTF8.GetBytes(","); byte[] a3 = Encoding.UTF8.GetBytes("]"); byte[] totalaa = new

asp.net mvc框架里使用的FCKEditor控件上传内容报错

做那种有html文本编辑内容的项目时是怎么解决表单验证问题的,在配置加validateRequest="false" 冒失很不安全,容易被脚本攻击 解决: (1)在IIS虚拟目录属性中选择asp.net的版本为2.0的就OK了,我原来选的是4.0版本,!! (2)在页面级别(aspx中)设置ValidateRequest="false"(请求启用了请求验证,则为 true:否则为 false. 默认值为 true)       或者       在全局级别(Web.

上传的图片转换 base64字符串 存入数据库

public String fileToStr(MultipartFile file) throws IOException{ bate[] data = null; InputStream is =  file.getInputStream(); data = new byte[is.available()]; is.read(data); is.close(); String encode = Base64.getEncoder().encodeToString(data); String