把图像文件上传到数据库,并从数据库读出

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

上传图片到数据库:

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Data.SqlClient;

using System.Drawing;

using System.Web;

using System.Web.SessionState;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;

using System.IO;

namespace myUpLoad

{

/// <summary>

/// img2sql 的摘要说明。

/// </summary>

public class img2sql : System.Web.UI.Page

{

protected System.Web.UI.WebControls.TextBox imgTitleTextBox;

protected System.Web.UI.HtmlControls.HtmlInputFile upLoadImg;

protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;

protected System.Web.UI.WebControls.Button Button1;

protected SqlConnection myConnection;

private void Page_Load(object sender, System.EventArgs e)

{

// 在此处放置用户代码以初始化页面

string conn="server=(local);database=test;uid=sa;pwd=ilovenm";

myConnection=new SqlConnection(conn);

}

#region Web Form Designer generated code

override protected void OnInit(EventArgs e)

{

//

// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。

//

InitializeComponent();

base.OnInit(e);

}

/// <summary>

/// 设计器支持所需的方法 - 不要使用代码编辑器修改

/// 此方法的内容。

/// </summary>

private void InitializeComponent()

{

this.Button1.Click += new System.EventHandler(this.Button1_Click);

this.Load += new System.EventHandler(this.Page_Load);

}

#endregion

private void Button1_Click(object sender, System.EventArgs e)

{

Stream myStream=upLoadImg.PostedFile.InputStream;

int imgDataLen=upLoadImg.PostedFile.ContentLength;

string imgType=upLoadImg.PostedFile.ContentType;

string imgTitle=imgTitleTextBox.Text;

byte[] imgData=new byte[imgDataLen];

int n=myStream.Read(imgData,0,imgDataLen);

//string conn="server=(local);database=test;uid=sa;pwd=ilovenm";

//SqlConnection myConnection=new SqlConnection(conn);

SqlCommand myCommand = new SqlCommand("INSERT INTO image (imgtitle,imgtype,imgdata) VALUES ( @imgtitle, @imgtype, @imgdata )", myConnection);

myCommand.Parameters.Add(new SqlParameter("@imgtitle",SqlDbType.VarChar,50));

myCommand.Parameters["@imgtitle"].Value=imgTitle;

myCommand.Parameters.Add(new SqlParameter("@imgtype",SqlDbType.VarChar,50));

myCommand.Parameters["@imgtype"].Value=imgType;

myCommand.Parameters.Add(new SqlParameter("@imgdata",SqlDbType.Image));

myCommand.Parameters["@imgdata"].Value=imgData;

myConnection.Open();

int numRowsAffected=myCommand.ExecuteNonQuery();

myConnection.Close();

}

}

}

显示:

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Data.SqlClient;

using System.Drawing;

using System.Web;

using System.Web.SessionState;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;

namespace myUpLoad

{

/// <summary>

/// showimg 的摘要说明。

/// </summary>

public class showimg : System.Web.UI.Page

{

protected SqlConnection myConnection;

private void Page_Load(object sender, System.EventArgs e)

{

// 在此处放置用户代码以初始化页面

string imgID=Request.QueryString["imgid"];

string conn="server=(local);database=test;uid=sa;pwd=ilovenm";

//string conn="server=(local);database=test;uid=sa;pwd=ilovenm";

myConnection=new SqlConnection(conn);

string selectCmd="select imgdata,imgtype from image where id="+imgID;

SqlCommand myCommand=new SqlCommand(selectCmd,myConnection);

myConnection.Open();

SqlDataReader myDataReader=myCommand.ExecuteReader();

if (myDataReader.Read())

{

Response.ContentType=myDataReader["imgtype"].ToString();

Response.BinaryWrite((byte[])myDataReader["imgdata"]);

}

}

#region Web Form Designer generated code

override protected void OnInit(EventArgs e)

{

//

// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。

//

InitializeComponent();

base.OnInit(e);

}

/// <summary>

/// 设计器支持所需的方法 - 不要使用代码编辑器修改

/// 此方法的内容。

/// </summary>

private void InitializeComponent()

{

this.Load += new System.EventHandler(this.Page_Load);

}

#endregion

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航