<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    love fish大鵬一曰同風(fēng)起,扶搖直上九萬里

    常用鏈接

    統(tǒng)計(jì)

    積分與排名

    friends

    link

    最新評(píng)論

    ASP.NET2.0中將文件上傳到數(shù)據(jù)庫

    此問題經(jīng)常被人問,本文列出將文字和圖片上傳到數(shù)據(jù)庫的方法。包括Access數(shù)據(jù)庫和SQL Server數(shù)據(jù)庫。

    Access數(shù)據(jù)庫代碼

    <%&#64; Page Language="C#" EnableViewState="true" %> <%&#64; Import Namespace="System.Data.OleDb" %> <!doctype html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> protected void Button1_Click( object sender, EventArgs e ) { System.IO.Stream fileDataStream = FileUpload1.PostedFile.InputStream; if (fileDataStream.Length < 1) { Msg.Text = "請(qǐng)選擇文件。"; return; } //得到文件大小 int fileLength = FileUpload1.PostedFile.ContentLength; //創(chuàng)建數(shù)組 byte[] fileData = new byte[fileLength]; //把文件流填充到數(shù)組 fileDataStream.Read(fileData, 0, fileLength); //得到文件類型 string fileType = FileUpload1.PostedFile.ContentType; //構(gòu)建數(shù)據(jù)庫連接,SQL語句,創(chuàng)建參數(shù) string strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Image2Access.mdb"); OleDbConnection myConnection = new OleDbConnection(strCnn); OleDbCommand command = new OleDbCommand("INSERT INTO Person (PersonName,PersonEmail,PersonSex,PersonImageType,PersonImage)" + "VALUES (&#64;PersonName,&#64;PersonEmail,&#64;PersonSex,&#64;PersonImageType,&#64;PersonImage)", myConnection); command.Parameters.AddWithValue("&#64;PersonName",TextBox1.Text); command.Parameters.AddWithValue("&#64;PersonEmail", "mengxianhui&#64;dotnet.aspx.cc"); command.Parameters.AddWithValue("&#64;paramPersonSex", "男"); command.Parameters.AddWithValue("&#64;PersonImageType", fileType); command.Parameters.AddWithValue("&#64;PersonImage", fileData); //打開連接,執(zhí)行查詢 myConnection.Open(); command.ExecuteNonQuery(); myConnection.Close(); Response.Redirect(Request.RawUrl); } protected void Page_Load( object sender, EventArgs e ) { if (!Page.IsPostBack) { BindGrid(); } } private void BindGrid( ) { string strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Image2Access.mdb"); OleDbConnection myConnection = new OleDbConnection(strCnn); OleDbCommand myCommand = new OleDbCommand("SELECT * FROM Person", myConnection); try { myConnection.Open(); GridView1.DataSource = myCommand.ExecuteReader(System.Data.CommandBehavior.CloseConnection); GridView1.DataBind(); } catch (OleDbException SQLexc) { Response.Write("提取數(shù)據(jù)時(shí)出現(xiàn)錯(cuò)誤:" + SQLexc.ToString()); } } protected string FormatURL( object strArgument ) { return "ReadImage.aspx?id=" + strArgument.ToString(); } </script> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>上傳文件到數(shù)據(jù)庫</title> </head> <body> <form id="MengXianhui" runat="server"> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false"> <columns> <asp:TemplateField> <itemtemplate> <%#Eval("PersonName") %> </itemtemplate> </asp:TemplateField> <asp:TemplateField> <itemtemplate> <%#Eval("PersonEmail") %> </itemtemplate> </asp:TemplateField> <asp:TemplateField> <itemtemplate> <%#Eval("PersonSex") %> </itemtemplate> </asp:TemplateField> <asp:TemplateField> <itemtemplate> <img src="<%#FormatURL(Eval("PersonID")) % alt="" />" /></itemtemplate> </asp:TemplateField> </columns> </asp:GridView> <br /> <br /> 姓名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <br /> 照片:<asp:FileUpload ID="FileUpload1" runat="server" /> <asp:Button ID="btnUpload" runat="server" Text="上傳" OnClick="Button1_Click"></asp:Button> <p> <asp:Label ID="Msg" runat="server" ForeColor="Red"></asp:Label></p> </form> </body> </html>

     

    SQL Server數(shù)據(jù)庫代碼

    <%&#64; Page Language="C#" EnableViewState="true" %> <%&#64; Import Namespace="System.Data.SqlClient" %> <!doctype html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> string strCnn = "Persist Security Info=False;User ID=sa;Password=;Initial Catalog=Book;Server=(local);"; protected void Button1_Click( object sender, EventArgs e ) { System.IO.Stream fileDataStream = FileUpload1.PostedFile.InputStream; if (fileDataStream.Length < 1) { Msg.Text = "請(qǐng)選擇文件。"; return; } //得到文件大小 int fileLength = FileUpload1.PostedFile.ContentLength; //創(chuàng)建數(shù)組 byte[] fileData = new byte[fileLength]; //把文件流填充到數(shù)組 fileDataStream.Read(fileData, 0, fileLength); //得到文件類型 string fileType = FileUpload1.PostedFile.ContentType; //構(gòu)建數(shù)據(jù)庫連接,SQL語句,創(chuàng)建參數(shù) SqlConnection myConnection = new SqlConnection(strCnn); SqlCommand command = new SqlCommand("INSERT INTO UserPhoto (UserName,ContentType,Photo)" + "VALUES (&#64;UserName,&#64;ContentType,&#64;Photo)", myConnection); command.Parameters.AddWithValue("&#64;UserName", TextBox1.Text); command.Parameters.AddWithValue("&#64;ContentType", fileType); command.Parameters.AddWithValue("&#64;Photo", fileData); //打開連接,執(zhí)行查詢 myConnection.Open(); command.ExecuteNonQuery(); myConnection.Close(); Response.Redirect(Request.RawUrl); } protected void Page_Load( object sender, EventArgs e ) { if (!Page.IsPostBack) { BindGrid(); } } private void BindGrid( ) { SqlConnection myConnection = new SqlConnection(strCnn); SqlCommand myCommand = new SqlCommand("SELECT * FROM UserPhoto Order By id DESC", myConnection); try { myConnection.Open(); GridView1.DataSource = myCommand.ExecuteReader(System.Data.CommandBehavior.CloseConnection); GridView1.DataBind(); } catch (Exception SQLexc) { Response.Write("提取數(shù)據(jù)時(shí)出現(xiàn)錯(cuò)誤:" + SQLexc.ToString()); } } protected string FormatURL( object strArgument ) { return "ReadImage.aspx?id=" + strArgument.ToString(); } </script> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title>上傳文件到數(shù)據(jù)庫</title> </head> <body> <form id="MengXianhui" runat="server"> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false"> <columns> <asp:TemplateField> <itemtemplate> <%#Eval("UserName") %> </itemtemplate> </asp:TemplateField> <asp:TemplateField> <itemtemplate> <img src="<%#FormatURL(Eval("id")) % alt="" />" /></itemtemplate> </asp:TemplateField> </columns> </asp:GridView> <br /> <br /> 姓名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <br /> 照片:<asp:FileUpload ID="FileUpload1" runat="server" /> <asp:Button ID="btnUpload" runat="server" Text="上傳" OnClick="Button1_Click"></asp:Button> <p> <asp:Label ID="Msg" runat="server" ForeColor="Red"></asp:Label></p> </form> </body> </html>

     

    顯示圖片

    <%&#64; Page Language="C#" %> <%&#64; Import Namespace="System.Data.OleDb" %> <%&#64; Import Namespace="System.Data.SqlClient" %> <script runat="server"> protected void Page_Load( object sender, EventArgs e ) { ////構(gòu)建數(shù)據(jù)庫連接,SQL語句,創(chuàng)建參數(shù) //ACCESS數(shù)據(jù)庫使用本注釋部分 //string strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Image2Access.mdb"); //OleDbConnection myConnection = new OleDbConnection(strCnn); //OleDbCommand command = new OleDbCommand("select * from Person Where PersonID =" + Request.QueryString["id"], myConnection); //myConnection.Open(); //OleDbDataReader dr = command.ExecuteReader(); //if (dr.Read()) //{ // Response.Clear(); // Response.AddHeader("Content-Type", dr["PersonImageType"].ToString()); // Response.BinaryWrite((byte[])dr["PersonImage"]); //} //dr.Close(); //myConnection.Dispose(); //構(gòu)建數(shù)據(jù)庫連接,SQL語句,創(chuàng)建參數(shù) string strCnn = "Persist Security Info=False;User ID=sa;Password=;Initial Catalog=Book;Server=(local);"; SqlConnection myConnection = new SqlConnection(strCnn); SqlCommand command = new SqlCommand("select * from UserPhoto Where id =" + Request.QueryString["id"], myConnection); myConnection.Open(); SqlDataReader dr = command.ExecuteReader(); if (dr.Read()) { Response.Clear(); Response.AddHeader("Content-Type", dr["ContentType"].ToString()); Response.BinaryWrite((byte[])dr["Photo"]); } dr.Close(); myConnection.Dispose(); } </script>

     

    創(chuàng)建SQL數(shù)據(jù)表語句

    CREATE TABLE [UserPhoto] ( [id] [int] IDENTITY (1, 1) NOT NULL , [UserName] [nvarchar] (255) COLLATE Chinese_PRC_CI_AS NOT NULL , [ContentType] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL , [Photo] [image] NOT NULL , CONSTRAINT [PK_UserPhoto] PRIMARY KEY CLUSTERED ( [id] ) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO

    posted on 2008-02-05 08:54 liaojiyong 閱讀(1163) 評(píng)論(0)  編輯  收藏 所屬分類: Dot Net


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲日韩国产一区二区三区| 日韩一级免费视频| 亚洲国产日韩成人综合天堂 | 亚洲V无码一区二区三区四区观看| 最新亚洲人成无码网www电影| 国产天堂亚洲国产碰碰| 午夜免费不卡毛片完整版| 久久亚洲精品国产亚洲老地址 | 亚洲妇熟XXXX妇色黄| 中文字幕乱码系列免费| 亚洲爆乳无码专区| 午夜免费福利小电影| 亚洲精品国产成人| 好爽又高潮了毛片免费下载| 99热亚洲色精品国产88| 色吊丝最新永久免费观看网站| 亚洲国产成人AV网站| 啊v在线免费观看| 国产在线观看免费视频软件| 亚洲人成在线影院| 久久精品女人天堂AV免费观看| 亚洲AV性色在线观看| 亚洲伊人久久综合影院| 日本免费中文字幕| 中文字幕乱码亚洲无线三区| 亚洲 综合 国产 欧洲 丝袜| 久久丫精品国产亚洲av| 中国在线观看免费高清完整版| 亚洲а∨精品天堂在线| 亚洲一区二区三区无码影院| 一级毛片在线观看免费| 亚洲午夜无码久久久久小说| 亚洲精品一级无码中文字幕| 日韩电影免费在线观看中文字幕| 亚洲综合色7777情网站777| 国产青草视频在线观看免费影院| 激情五月亚洲色图| 亚洲国产黄在线观看| 老司机精品视频免费| 日本xxwwxxww在线视频免费| 中文字幕不卡高清免费|