NET 下数据库图片的存入与读取

ASP.Net将图片以二进制方式存入数据库,并读取 今天研究了一下如何将图片已二进制形式存入数据库,然后再从中读取显示在页面上。下面我会贴出一些关键代码。 1.将图片存入数据库 前台代码: 后台代码: 需要的命名空间using System.Data.SqlClient;  using System.Drawing;  using System.IO; /// /// 添加人员信息 /// / 阅读详情

据库结构
create table test
{
  id int identity(1,1),
  FImage image
}

 
相关的存储过程
Create proc UpdateImage (@UpdateImage Image)
As
Insert Into test (FImage) values (@UpdateImage)
GO

 
OpenFileDialog openfileDialog = new OpenFileDialog();
openfileDialog.Filter = "Picture Files(*.jpg)|*.jpg|Bmp(*.bmp)|*.bmp|All Files(*.*)|*.*";
FileStream fileStream;
openfileDialog.ShowDialog();
string filepath = openfileDialog.FileName;
if (filepath.Trim() != "")
{
  //获得图象并把图象转换为byte[]
  fileStream = new FileStream(filepath, FileMode.Open,  FileAccess.Read);
  byte[] photoArray = new byte[(int)fileStream.Length];
  fileStream.Read(photoArray, 0, photoArray.Length);
  fileStream.Close();
  try
  {
     pictureBox1.SizeMode = PictureBoxSizeMode.Normal;
     pictureBox1.Image = System.Drawing.Image.FromFile(filepath);
  }
  catch (Exception ex)
  {
     MessageBox.Show(ex.Message);
  }
  //连接数据库
  SqlConnection myConnection = new SqlConnection();
  myConnection.ConnectionString ="Data Source=localhost;Database=test;User Id=sa;Pwd=sa";
  SqlCommand mySqlCommand = new SqlCommand("UpdateImage", myConnection);
  mySqlCommand.CommandType = CommandType.StoredProcedure;
  mySqlCommand.Parameters.Add("@UpdateImage", SqlDbType.Image);
  mySqlCommand.Parameters["@UpdateImage"].Value = photoArray;
  //如果不使用存储过程,可以把上面四句代码改为:
  //string strSql="Insert into test(FImage) values(@FImage)";
  //SqlCommand cmd=new SqlCommand(strSql,conn);
  //cmd.Parameters.Add("@FImage",SqlDbType.Image);
  //cmd.Parameters["@FImage"].Value=photoArray;
  myConnection.Open();
  mySqlCommand.ExecuteNonQuery();
  myConnection.Close();
}
//以下是从数据库读取图片
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=localhost;Database=test;User Id=sa;Pwd=sa";
string strSql = "select FImage from test where id=1";
SqlCommand cmd = new SqlCommand(strSql, conn);
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
reader.Read();
MemoryStream ms = new MemoryStream((byte[])reader["FImage"]);
System.Drawing.Image image = System.Drawing.Image.FromStream(ms, true);
reader.Close();
conn.Close();
pictureBox1.Image = image;
 

MySQL存储图片读取图片 读写流程图如何从磁盘中读取图片数据 //从选取的文件中读取图片数据 int ReadImg(char *filename ,char *buffer) //filename:用来存储 Path+filename buffer:用来存储 { if (NULL == filename || buffer == NULL) { return -1; } //打开文件 FILE* fp = fopen(filename, "rb");//rb 以读的方式打开 //判断是否成功打开了文件 阅读详情

相关推荐

从图像,视频和音频文件中提取Exif,IPTC,XMP,ICC和其他元数据-.NET开发

MetadataExtractor是一个简单的.NET库,用于从图像,电影和音频文件中读取元数据。 安装使用此库的最简单方法是通过其NuGet软件包。 可以将其添加到项目文件中。MetadataExtractor是一个简单的.NET库,用于从图像,电影和音频文件中读取元数据。 安装使用此库的最简单方法是通过其NuGet软件包。 要么将此添加到您的项目文件 或在Visual Studio的程序包管理器控制台中键入以下内容:PM>安装程序包MetadataExtractor或在Visual Studio NuGet程序包管理器中搜索MetadataExtractor。 用法

将Excel文件数据库导入SQL Server

将Excel文件数据库导入SQLServer的三种方案//方案一:通过OleDB方式获取Excel文件的数据,然后通过DataSet中转到SQLServer openFileDialog=newOpenFileDialog();openFileDialog.Filter="Excelfiles(*.xls)|*.xls"; if(openFileDialog.ShowDialog()==Dia...

威尔软件 127

单细胞专题(1) | 单细胞转录组研究样本准备指南(上)

单细胞RNA测序(scRNA-seq)是目前最前沿,能进行大规模实验的转录组研究技术,为理解细胞组成和动态生物学过程提供了很多新的见解。单细胞研究已经为我们理解发育过程,老化和疾病(如癌症)等提供了大量数据。在这里,小编主要就前期的样本准备与保存需注意问题给大家进行讲解,以备大家在不同的研究场景和研究背景下,走好单细胞转录组学研究的第一步。

bioyigene的博客 4227

Java从数据库读取图片

之前讲了如何将图片上传到数据库,我们是通过将图片转换为二进制数组再保存进数据库的,数据库字段使用的是LONGBLOB类型。那么今天来说一下怎么将保存进去的图片读取到页面上。 由于其他数据与图片返回的类型不同,所以图片信息是不与其他文字信息一起返回给页面的。先在Dao中写查询方法 public Trends findTrendsById(int trendsid) { Trends tren...

一起摆摊啊 1万+

OpenFeign, Zuul, Gateway相互不兼容的问题总结

版本 Lib Vresion spring-cloud-starter-gateway 3.1.0 spring-cloud-dependencies 2021.0.0 spring-cloud-starter-netflix-zuul 2.2.6.RELEASE spring-cloud-starter-openfeign 3.1.0 1. Zuul 与OpenFeign 一起使用的问题 错误信息 jav.

Harry的博客 4131

LightTools宏 vs Python API:光学仿真自动化方案选型指南

本文深入对比了LightTools光学仿真自动化中VBA宏与Python API两种方案。VBA宏内嵌易用,适合固定流程批处理;Python API生态强大,尤其在参数优化算法集成方面优势显著,便于构建复杂工作流。文章结合案例,为不同场景下的技术选型提供清晰指南。

garlic的博客 939

ASP.NET MVC从数据库读取、存入图片

一、DEMO效果 先选择图片,点击上传后,即可在照片预览中看到照片。如果需要更改,重新上传就可覆盖原图片。 二、代码 页面端,这里有个细节:再次上传后,如果<img>的URL不变,浏览器会从缓存中读取图片,这就会导致图片预览不会刷新,不显示刚上传的图片。解决这个问题只需要...

机械键盘侠博客 2452

Autosar诊断实战系列07-Dcm之0x19 06扩展数据配置及工程问题讨论

19 06扩展数据如何配置?如果某DTC没有出现过故障扩展数据该如何响应?

initiallizer的博客 1703

VB.NET操作ACCESS数据库读取存入图片

一、准备工作     在ACCESS数据库中,将字段声明为 OLE链接 类型 二、将图片框中图片转化成二进制数组的方法         Dim MyStream As New System.IO.MemoryStream         Me.PictureBoxPeiTu.Image.Save(MyStream, System.Drawing.Imaging.ImageForma

aocshallo的专栏 6952

容器化部署指南——Docker/K8s环境下的OpenClaw实践(附Dockerfile)

通过本文的详细指导,你已经掌握了OpenClaw在Docker和Kubernetes环境中的容器化部署方法。从基础镜像构建到高级部署策略,从开发环境到生产环境,你现在已经具备了完整的容器化部署能力。 容器化技术为OpenClaw提供了灵活、可扩展、可移植的部署方案,能够满足不同规模和需求的应用场景。通过合理使用Docker和Kubernetes,你可以实现高效的部署管理和运维自动化。 在实际应用中,建议根据具体的业务需求选择合适的部署策略,并结合监控、日志、安全等最佳实践,确保系统的稳定性和可靠性。同时

博客 492

甲基化生物信息学分析及批次效应校正全流程

本文系统阐述了DNA甲基化数据分析中的批次效应问题及解决方案。甲基化数据(β值和M值)对实验批次差异高度敏感,可能导致假阳性结果。文章详细介绍了批次效应检测方法(PCA可视化、BEclear定量评分)和校正流程,包括数据预处理、参数化(ComBat-met)与非参数化(BEclear)校正方法,并提供了完整的R代码实现。重点解决了β值有界分布与统计模型假设冲突的问题,为甲基化研究的可靠性提供技术保障。

huanghm88的专栏 105

asp写入mysql图片路径_Asp.net把图片存入数据库和读取图片的方法

网上关于ASP.NET上传图片到数据库的资料非常多,常用的如下:存储图片类型数据有以下几种方式:1.将图片转换为二进制数组(byte[])byte[] fileData = this.FileUpload1.FileBytes;2. 根据路径将文件转换为2进制数组代码public byte[] returnbyte(string strpath){// 以二进制方式读文件FileStream fs...

weixin_39687990的博客 357

03 - AMDGPU驱动架构概览

本文介绍了AMDGPU驱动的整体架构,重点分析其图形驱动(AMDGPU)和计算驱动(KFD)的双重结构。KFD驱动作为HSA架构的核心组件,包含进程管理、设备管理等模块,其中SVM功能在kfd_svm.c实现。文章详细解析了KFD的核心组件、初始化流程及字符设备接口,并阐述了TTM框架在GPU内存管理中的作用。通过架构图和代码片段展示了AMDGPU与KFD的协作机制,为后续深入理解SVM实现奠定基础。

图形/计算GPU的驱动与虚拟化技术分享园地 3356

ASP.Net将图片以二进制方式存入数据库,并读取

把图片转换成二进制--把二进制转换成图片 private void button1_Click(object sender, EventArgs e) { string path = this.textBox1.Text; byte[] imgBytesIn = SaveImage(path);

技术资料收集站 4686

YOLOv12中的A2C2f模块详解,涉及区域注意力模块(A2)和 R-ELAN 结构详解

区域注意力模块(Area Attention, A2)的设计出发点是为了解决传统注意力机制在计算复杂度和内存访问效率上的问题。传统的自注意力机制(Self-Attention)具有二次方的计算复杂度(O(n²)),尤其是在处理高分辨率图像时,计算成本非常高。此外,注意力机制的内存访问模式不如卷积神经网络高效,导致在实际应用中难以满足实时性要求。区域注意力模块通过将特征图划分为多个区域,并在每个区域内进行注意力计算,从而显著降低了计算复杂度。

Limiiiing的博客 5513

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

ASP.NET把图片存入数据库和使用文件流读取显示

网上关于ASP.NET上传图片到数据库的资料非常多,常用的如下: 存储图片类型数据有以下几种方式: 1.将图片转换为二进制数组(byte[]) byte[]fileData=this.FileUpload1.FileBytes; 2.根据路径将文件转换为2进制数组 代码 publicbyte[]returnbyte(stringstrpath){...

weixin_30675967的博客 163

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

asp.net中将图片或文件存入数据库并读取显示在image控件中

      最近在做一个项目时,发现数据库的设计是把图片的存放字段设置成了image类型。这就说明你只能把文件存入到数据库中,这个做法不是我常用的,只存图片路径的方法。所以就上网去查了一下。大体做法都一样。但是有一点不好的就是,你在上传图片的时候,无法对图片进行预览。根据这一点我自己做了一些改动。下面把代码放上来,大家看一下。这个是将图片文件转化为二进制流,this.image1.ImgeUrl

我本无名的专栏 1万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

vb.net mysql存储图片_VB.NET操作ACCESS数据库读取存入图片 | 学步园

Imports System.Data.OleDbPublic Class AccessDBToolsPrivate conn As OleDbConnectionPublic Sub New(ByVal dbPath As String)conn = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" &amp...

weixin_35126737的博客 379

Asp.net把图片存入数据库和使用文件流来读取显示

一、数据库存储图片类型有以下几种方式: 1、将图片装换为二进制数值(byte[]) byte [] fileData=this.FileUpload1.FileBytes; 2、根据路径将文件装换为二进制数组 private byte[] returnbyte(string strpath) { //以二进制方式读文件...

weixin_34280237的博客 485

把图片以二进制方式存入sql server数据库并读取出来(.net)

1、建所需数据库和表,语句如下:--建立数据库create database test--使用该数据库use test--建立存放图片的表create table piclist(id int Identity primary key, pic Image not null)2、制作上传图片的模块,代码如下:前台html代码:<%@ Page Language="...

weixin_30664539的博客 442

ASP.NET把图片存入数据库和使用文件流读取显示(转)

网上关于ASP.NET上传图片到数据库的资料非常多,常用的如下: 存储图片类型数据有以下几种方式: 1.将图片转换为二进制数组(byte[]) byte[]fileData=this.FileUpload1.FileBytes; 2.根据路径将文件转换为2进制数组 代码 publicbyte[]returnbyte(stringstrpath){...

weixin_30425949的博客 293
上一篇: 双击dataGridView后的数据传递示例
下一篇: DataGridView 实际项目当中需要注意的问题
脑瓜子
博客等级 码龄20年 63粉丝 324原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值