此页面是用户上传与显示数据库图片的界面。

Code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>無題のページ</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        &nbsp; &nbsp;
        <asp:FileUpload ID="FileUpload1" runat="server" />&nbsp;
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /><br />
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><br />
        <asp:Image ID="Image1" runat="server" />
        <asp:Button ID="Button2" runat="server" Text="Button" OnClick="Button2_Click" /></div>
    </form>
</body>
</html>

Code
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Data.SqlClient;
using System.Web.Configuration;
using System.IO;
using System.Web.Hosting;

public partial class _Default : System.Web.UI.Page
{

protected void Button1_Click(object sender, EventArgs e)
    {
        BinaryReader br = new BinaryReader(this.FileUpload1.FileContent);

if (br.BaseStream.Length == 0)
        {
            Label1.Text = "File size should not be zero!";
            return;
        }

SqlConnection con = new SqlConnection(WebConfigurationManager.ConnectionStrings["testDB"].ConnectionString);
        SqlCommand comm = new SqlCommand();
        comm.Connection = con;
        comm.CommandText = "INSERT INTO dbo.picture VALUES (@picID,@bin)";

Guid g = Guid.NewGuid();
        comm.Parameters.Add("@picID", SqlDbType.UniqueIdentifier).Value = g;
        comm.Parameters.Add("@bin", SqlDbType.Image).Value = br.ReadBytes((int)br.BaseStream.Length);

con.Open();
        comm.ExecuteNonQuery();
        con.Close();

Label1.Text = g.ToString();

}
    protected void Button2_Click(object sender, EventArgs e)
    {
        Image1.ImageUrl = "CreateImage.aspx?picID=" + Label1.Text;
    }
}

此页面是用来读取数据库的二进制数据,生成数据流提供给主页面Image1.ImageUrl属性。

Code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="CreateImage.aspx.cs" Inherits="CreateImage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>無題のページ</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
    </form>
</body>
</html>

Code
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Data.SqlClient;
using System.Web.Configuration;
using System.IO;
using System.Web.Hosting;

public partial class CreateImage : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

Guid picID;
        if (Request.QueryString["picID"] != null || Request.QueryString["picID"] != "")
        {
            picID = new Guid(Request.QueryString["picID"]);
        }
        else
        {
            picID = new Guid();
        }

SqlConnection con = new SqlConnection(WebConfigurationManager.ConnectionStrings["testDB"].ConnectionString);
        SqlCommand comm = new SqlCommand();
        comm.Connection = con;
        comm.CommandText = "SELECT * FROM dbo.picture WHERE picID =@picID";
        comm.Parameters.Add("@picID", SqlDbType.UniqueIdentifier).Value = picID;

SqlDataAdapter sda = new SqlDataAdapter(comm);

DataTable dt = new DataTable("picture");

con.Open();
        sda.Fill(dt);
        con.Close();

if (dt.Rows.Count> 0)
        {
            Response.ContentType = "image/jpeg";
            Response.BinaryWrite((byte[])dt.Rows[0]["bin"]); 
        }
    }
}

转载于:https://www.cnblogs.com/WayToDotNET/archive/2009/02/09/1386736.html

asp.net下向数据库存储和读取图片示例相关推荐

  1. jdbc mysql查询显示图片_JDBC【向数据库中存入读取图片】

    JDBC-向数据库中存入读取图片 注:此代码依赖自定义的数据库连接工具类 1.向数据库存入一张照片 import java.io.File; import java.io.FileInputStrea ...

  2. iOS沙盒路径及路径下数据的存储和读取

    2019独角兽企业重金招聘Python工程师标准>>> iOS应用都被限制在"沙盒"中,"沙盒"相当于一个加了仅主人可见权限的文件夹,苹果对沙 ...

  3. sqlite数据库插入和读取图片数据 (for ios)

    为什么80%的码农都做不了架构师?>>>    在iOS下用sqlite数据库存储图片,先把你的图片转换成 NSData 形式,然后在数据库添加一行 blob 数据 假定数据库中存在 ...

  4. ASP.NET使用数据库存储、读取并修改图片

    在SQL SERVER中建立这样结构的一个表: 列名 类型 目的 ID Integer 主键ID IMGTITLE Varchar(50) 图片的标题 IMGTYPE Varchar(50) 图片类型 ...

  5. asp.net下url参数含有中文读取后为乱码

    js 传递参数为 中文, 程序读取中文后为乱码, 解决此问题是需要将该中文进行编码,使用 encodeURI(). 或者通过程序进行相应的编码处理. 转载于:https://www.cnblogs.c ...

  6. java以Blob形式存储,读取图片并在jsp页面显示图片流

    2019独角兽企业重金招聘Python工程师标准>>> 废话少说代码伺候: 封装好的ImageUtil类:目的读取本地的图片文件并存入数据库,然后读出数据库中以Blob形式存储的图片 ...

  7. mysql存储和读取图片

    首先,介绍一下mysql相关的数据类型:MySQL中有四种BLOB类型,TinyBlob(最大255Byte), Blob(最大65K), MediunBlob(16M), LongBlob(最大4G ...

  8. mySql存储,读取图片

    step1 创建表 step2   数据库链接工具类 package qq; import java.sql.Connection; import java.sql.DriverManager; im ...

  9. mysql数据库插入图片_向MySql数据库插入与读取图片文件

    1.插入图片 import java.io.FileInputStream; import java.io.InputStream; import java.sql.Connection; impor ...

最新文章

  1. 分布式mysql中间件(mycat)
  2. 拼团小程序源码_纯小白如何做一个摄影电商拼团小程序?
  3. 必须掌握的空调制冷系统维修要点
  4. SQL语言之DQL语言学习(十一)分页查询
  5. 《SLIC Superpixels》阅读笔记
  6. C#中如何 处理 TCP中的TIME_WAIT
  7. day10 in india
  8. Tez UI界面一直处于loading
  9. 世界冠军之路:菜鸟车辆路径规划求解引擎研发历程
  10. HTTP的⼏种请求⽅法及⽤途小谈(面试)
  11. 【Deep Learning 二】课程一(Neural Networks and Deep Learning),第二周(Basics of Neural Network programming)答案
  12. Github上点赞最多的10个Python项目(2020年3月)
  13. 五、String字符串常用方法
  14. 基于zookeeper的分布式锁实现原理是什么?
  15. (原创)骑士人才系统(74CMS) 阿里短信接口 不影响后续升级
  16. mysql姓氏笔画排序_mysql中怎么按姓氏笔画排序
  17. html5好看的注册页面设计,美观大气注册登录页面模板html源码
  18. 《17.Deep Pyramidal Residual Networks》
  19. MySQL数据库(一)服务器数据库的搭建和远程访问
  20. 基于Springboot拦截器的AES报文解密

热门文章

  1. java里的字符流_javaIO流中字符流的应用
  2. java富文本编辑器wangEditor-3.1.1的使用流程
  3. x86服务器当虚拟化的存储,X86服务器虚拟化实施方案.doc
  4. 关于CPU Cache——程序猿需要知道的那些事
  5. boost::function/bind
  6. HDU - 6704 K-th occurrence (后缀数组+主席树)
  7. Fraction+mysql_MySQL 数据类型总结
  8. 堆排序的时间复杂度分析
  9. HMM:Hidden Markov Model 代码讲解
  10. [转]C++中sleep()函数的使用