请教如何将文件存储到数据库中?

请教如何将文件存储到数据库中?,第1张

文件保存到数据库中,实际上是将文件转换成二进制流后,将二进制流保存到数据库相应的字段中。在SQL Server中该字段的数据类型是Image,在Access中该字段的数据类型是OLE对象。//保存文件到SQL Server数据库中FileInfo fi=new FileInfo(fileName)FileStream fs=fi.OpenRead()byte[] bytes=new byte[fs.Length]fs.Read(bytes,0,Convert.ToInt32(fs.Length))SqlCommand cm=new SqlCommand()cm.Connection=cncm.CommandType=CommandType.Textif(cn.State==0) cn.Open()cm.CommandText="insert into "+tableName+"("+fieldName+") values(@file)"SqlParameter spFile=new SqlParameter("@file",SqlDbType.Image)spFile.Value=bytescm.Parameters.Add(spFile)cm.ExecuteNonQuery()//保存文件到Access数据库中FileInfo fi=new FileInfo(fileName)FileStream fs=fi.OpenRead()byte[] bytes=new byte[fs.Length]fs.Read(bytes,0,Convert.ToInt32(fs.Length))OleDbCommand cm=new OleDbCommand()

如果服务商没有提供在线管理数据库功能,就得自己安装一个mssql

客户端,现在一般选择mssql

2005的就可以了,使用它连接上服务器数据库后,把这个bak文件还原到你申请的的数据库中。具体 *** 作客服人员应该提供一定的支持。

发给你一个上传图片并把它存入数据库的例子。1.前台<table cellpadding="0" cellspacing="0"<tr<td colspan="2"</td</tr<tr<td<asp:Label ID="Label1" runat="server" Font-Size="9pt" Text="选择文件"</asp:Label</td<td align="left"<asp:FileUpload ID="FileUpload1" runat="server" Font-Size="9pt" /</td</tr<tr<td</td<td align="left"<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="保存"/</td</tr<tr<td</td<td align="left"<asp:Label ID="Label3" runat="server" Font-Size="9pt" Width="216px"</asp:Label</td</tr</table2.后台using System.IOusing System.Data.SqlClientpublic partial class _Default : System.Web.UI.Page{protected void Button1_Click(object sender, EventArgs e){try{if (this.FileUpload1.PostedFile.FileName != ""){string ImgPath = FileUpload1.PostedFile.FileNamestring ImgName = ImgPath.Substring(ImgPath.LastIndexOf("\\") + 1)string ImgExtend = ImgPath.Substring(ImgPath.LastIndexOf(".") + 1)int FileLen = this.FileUpload1.PostedFile.ContentLengthByte[] FileData = new Byte[FileLen]HttpPostedFile hp = FileUpload1.PostedFileStream sr = hp.InputStreamsr.Read(FileData, 0, FileLen)SqlConnection con = new SqlConnection("server=(local)user id=sapwd=database=db_07")con.Open()SqlCommand com = new SqlCommand("INSERT INTO tb_08 (name) VALUES (@imgdata)", con)com.Parameters.Add("@imgdata", SqlDbType.Image)com.Parameters["@imgdata"].Value = FileDataLabel3.Text = "保存成功!"}else{Label3.Text = "请选择文件!"}}catch (Exception error){Label3.Text = "处理失败!原因为:" + error.ToString()}}}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6769240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存