如何显示数据库中Image类型的图片
来源:互联网 发布:大伟吉他淘宝 编辑:程序博客网 时间:2024/06/05 18:56
1.数据库表结构
2.显示图片的代码,把下面的代码随便放到一个aspx页面的pageload事件中
3.构造数据,通过上传的方式把图片存入数据库,下面的代码放入一个上传按钮的单击事件中,页面上在加一个上传控件
4.显示图片的代码,建立一个新的aspx页面,然后显示图片
1if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Person]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
2drop table [dbo].[Person]
3GO
4
5CREATE TABLE [dbo].[Person] (
6 [PersonID] [int] IDENTITY (1, 1) NOT NULL ,
7 [PersonImage] [image] NULL ,
8 [PersonImageType] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL
9) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
10GO
11
12
2drop table [dbo].[Person]
3GO
4
5CREATE TABLE [dbo].[Person] (
6 [PersonID] [int] IDENTITY (1, 1) NOT NULL ,
7 [PersonImage] [image] NULL ,
8 [PersonImageType] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL
9) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
10GO
11
12
2.显示图片的代码,把下面的代码随便放到一个aspx页面的pageload事件中
1 void GetImageSrcFromDB()
2 {
3 string strImageID = Request.QueryString["id"];
4 SqlConnection myConnection = new SqlConnection("Data Source=.;Initial Catalog=mxh;User Id=sa;Password=sa;");
5 SqlCommand myCommand = new SqlCommand("Select PersonImageType, PersonImage from Person Where PersonID="
6 + strImageID, myConnection);
7
8 try
9 {
10 myConnection.Open();
11 SqlDataReader myDataReader;
12 myDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
13 if(myDataReader.Read())
14 {
15 Response.Clear();
16
17 //Response.ContentType = myDataReader["PersonImageType"].ToString();
18 Response.BinaryWrite((byte[])myDataReader["PersonImage"]);
19 }
20 myConnection.Close();
21 }
22 catch (SqlException SQLexc)
23 {
24 Response.Write(SQLexc.ToString());
25 }
26 //Response.End();
27 }
2 {
3 string strImageID = Request.QueryString["id"];
4 SqlConnection myConnection = new SqlConnection("Data Source=.;Initial Catalog=mxh;User Id=sa;Password=sa;");
5 SqlCommand myCommand = new SqlCommand("Select PersonImageType, PersonImage from Person Where PersonID="
6 + strImageID, myConnection);
7
8 try
9 {
10 myConnection.Open();
11 SqlDataReader myDataReader;
12 myDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
13 if(myDataReader.Read())
14 {
15 Response.Clear();
16
17 //Response.ContentType = myDataReader["PersonImageType"].ToString();
18 Response.BinaryWrite((byte[])myDataReader["PersonImage"]);
19 }
20 myConnection.Close();
21 }
22 catch (SqlException SQLexc)
23 {
24 Response.Write(SQLexc.ToString());
25 }
26 //Response.End();
27 }
3.构造数据,通过上传的方式把图片存入数据库,下面的代码放入一个上传按钮的单击事件中,页面上在加一个上传控件
1 //获得图象并把图象转换为byte[]
2 HttpPostedFile upPhoto=UpPhoto.PostedFile;
3 int upPhotoLength=upPhoto.ContentLength;
4 byte[] PhotoArray=new Byte[upPhotoLength];
5 Stream PhotoStream=upPhoto.InputStream;
6 PhotoStream.Read(PhotoArray,0,upPhotoLength);
7
8 //连接数据库
9 SqlConnection conn=new SqlConnection();
10 conn.ConnectionString="Data Source=localhost;Database=mxh;User Id=sa;Pwd=sa";
11
12 string strSql="Insert into Person(PersonImage,PersonImageType) values(@FImage,'jpeg')";
13 SqlCommand cmd=new SqlCommand(strSql,conn);
14 cmd.CommandType=CommandType.Text ;
15
16 //如果你希望不使用存储过程来添加图片把上面四句代码改为:
17
18 //SqlCommand cmd=new SqlCommand(strSql,conn);
19 cmd.Parameters.Add("@FImage",SqlDbType.Image);
20 cmd.Parameters["@FImage"].Value=PhotoArray;
21 conn.Open();
22 cmd.ExecuteNonQuery();
23 conn.Close();
2 HttpPostedFile upPhoto=UpPhoto.PostedFile;
3 int upPhotoLength=upPhoto.ContentLength;
4 byte[] PhotoArray=new Byte[upPhotoLength];
5 Stream PhotoStream=upPhoto.InputStream;
6 PhotoStream.Read(PhotoArray,0,upPhotoLength);
7
8 //连接数据库
9 SqlConnection conn=new SqlConnection();
10 conn.ConnectionString="Data Source=localhost;Database=mxh;User Id=sa;Pwd=sa";
11
12 string strSql="Insert into Person(PersonImage,PersonImageType) values(@FImage,'jpeg')";
13 SqlCommand cmd=new SqlCommand(strSql,conn);
14 cmd.CommandType=CommandType.Text ;
15
16 //如果你希望不使用存储过程来添加图片把上面四句代码改为:
17
18 //SqlCommand cmd=new SqlCommand(strSql,conn);
19 cmd.Parameters.Add("@FImage",SqlDbType.Image);
20 cmd.Parameters["@FImage"].Value=PhotoArray;
21 conn.Open();
22 cmd.ExecuteNonQuery();
23 conn.Close();
4.显示图片的代码,建立一个新的aspx页面,然后显示图片
1<asp:Image id="Image1" runat="server" ImageUrl="ReadImage.aspx?id=1"></asp:Image>
- 如何显示数据库中Image类型的图片
- 如何显示数据库中Image类型的图片
- 如何将图片以Image类型存储到数据库 如何从数据库中读取Image类型的字段
- 如何从数据库中获取image类型的数据,并把它显示出来
- 如何将图片以Image类型存储到数据库 (asp.net) 如何从数据库中读取Image类型的字段(asp.net)
- C#中使用FileUpload上传图片到SQL数据库中以image类型存储并使用Image控件显示注意事项
- 怎样把SQL_SERVER数据库里的(类型是image)图片显示在aspx页面里的image控件里
- 存储图片到数据库的image字段中,并在Winform中显示图片
- 存储图片到数据库的image字段中,并在Winform中显示图片
- 数据库中的图片数据怎样在Image中显示
- 从数据库中查找Image图片并显示。
- Image扩展,如何将网络图片显示在自己的程序中
- 将Image类型的图片文件保存到Mysql数据库
- 将数据库中以image类型保存的图片另存为jpg文件,并将其路径存入数据库
- 将SQL Server 2000数据库Image类型图片数据显示在页面上
- Silvelight保存Image图片到SQL数据库的Image类型里面(亲自测试)
- asp.net 显示图片到指定的Image控件中
- LigerUi的Grid中显示Image图片或图标!
- 盖茨十条成功箴言 值得一生铭记(组图)
- web2.0知识汇总
- 如何把一个Post过来的图片Base64编码转化为Stream
- 转的东西,程序员的差别
- 在Windows环境下建立Snort+BASE入侵检测系统
- 如何显示数据库中Image类型的图片
- json代替xml的好东西。
- 编写服务器控件时,向页面写入脚本的方法
- 防止盗链下载问题
- json代替xml的好东西。
- tcp/ip primer plus 第十四章 名字解析dns
- AJAX简介(转)
- 写给昨天
- java中在一个数组中插入一个新的值