C#读写SQL Server数据库图片

效果图:

下载链接

1.创建一个Winform窗体,窗体分为“数据上传”和“数据读取”两部分;

2.在SQL Server数据库中创建一个名为PeopleInformation的数据表,表中分配三个字段,分别为:ID、Name、Photo。

3.将ID字段设置为主键,自增

图片上传的代码

 1     //通过数据流读取本地的图片信息
 2     FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read);
 3     byte[] bt = new byte[fs.Length];
 4     fs.Read(bt, 0, bt.Length);
 5     fs.Close();
 6     //打开数据库的连接
 7     string strconn = @"Data Source=LONG-PC\;Initial Catalog=PRACTICE;User ID=istrive;Password=istrive";
 8     SqlConnection conn = new SqlConnection(strconn);
 9     conn.Open();
10     //将信息上传到 SQL Server
11     string strcmd = "insert into PeopleInformation (Name,Photo) values (@name,@photo)";
12     SqlCommand cmd = new SqlCommand();
13     cmd.Connection = conn;
14     cmd.CommandText = strcmd;
15     cmd.Parameters.Add(new SqlParameter("@name", txtUpload.Text));
16     cmd.Parameters.Add(new SqlParameter("@photo",bt));
17     cmd.ExecuteNonQuery();
18     //关闭数据库连接
19     conn.Close();

图片读取的代码:

 1     //打开数据库连接
 2     string strcoon = @"Data Source=LONG-PC\;Initial Catalog=PRACTICE;User ID=istrive;Password=istrive ;Connect Timeout=5";
 3     SqlConnection conn = new SqlConnection(strcoon);
 4     conn.Open();
 5     //查询数据库
 6     string strcmd = "select Name,Photo from  PeopleInformation where Name = @name";
 7     SqlCommand cmd = new SqlCommand(strcmd, conn);
 8     cmd.Parameters.Add(new SqlParameter("@name", name));
 9     SqlDataAdapter adap = new SqlDataAdapter(cmd);
10     DataTable dt = new DataTable();
11     cmd.ExecuteNonQuery();
12     adap.Fill(dt);
13     //将图片信息从 DataTable 以数据流的形式读取
14     if (dt.Rows.Count != 0)
15     {
16         MemoryStream ms = new MemoryStream((byte[])dt.Rows[0]["Photo"]);
17         picRead.Image = Image.FromStream(ms, true);
18     }
时间: 2024-08-10 19:49:21

C#读写SQL Server数据库图片的相关文章

C#从SQL server数据库中读取l图片和存入图片

原文:C#从SQL server数据库中读取l图片和存入图片 本实例主要介绍如何将图片存入数据库.将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类.BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中.主要代码如下: private void button1_Click(object sender, EventArgs e)

C#将图片存放到SQL SERVER数据库中的方法

本文实例讲述了C#将图片存放到SQL SERVER数据库中的方法.分享给大家供大家参考.具体如下: 第一步: //获取当前选择的图片 this.pictureBox1.Image = Image.FromStream(this.openFileDialog1.OpenFile()); //获取当前图片的路径 string path = openFileDialog1.FileName.ToString(); //将制定路径的图片添加到FileStream类中 FileStream fs = ne

50种方法优化SQL Server数据库查询(转载)

原文地址:http://www.cnblogs.com/zhycyq/articles/2636748.html 查询速度慢的原因很多,常见如下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用

提高SQL Server数据库效率常用方法

1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用户查看,原因是读写竞争资源. 9.返回了不必要的行和列 10.查询语句不好,没有优化 ●可以通过如下方法来优化查询 : 1.把数据.日志.索引放到不同的

你所不知道的SQL Server数据库启动过程(用户数据库加载过程的疑难杂症)

前言 本篇主要是上一篇文章的补充篇,上一篇我们介绍了SQL Server服务启动过程所遇到的一些问题和解决方法,可点击查看,我们此篇主要介绍的是SQL Server启动过程中关于用户数据库加载的流程,并且根据加载过程中所遇到的一系列问题提供解决方案. 其实SQL Server作为微软的一款优秀RDBMS,它启动的过程中,本身所带的那些系统库发生问题的情况相对还是很少的,我们在平常使用中,出问题的大部分集中于我们自己建立的用户数据库. 而且,相对于侧重面而言,其实我们更关注的是我们自己建立的用户数

影响SQL Server数据库应用性能的几个常见因素

本文转自:http://blogs.msdn.com/b/apgcdsd/archive/2012/01/18/sql-server-2012-1-18.aspx 影响SQL Server数据库应用性能的几个常见因素 性能问题是困扰数据库用户的常见问题之一.经常会有人因为遇到性能问题,质疑SQL Server处理大型数据应用的能力.其实,作为一个在市场上经营了二十多年,出了好几代版本的数据库产品,SQL Server作为一个企业级数据库的能力,是毋庸置疑的.在实际应用中,数据量达到几百GB,甚至

《SQL Server企业级平台管理实践》读书笔记——关于SQL Server数据库的备份方式

数据备份一直被认为数据库的生命,也就是一个DBA所要掌握的主要技能之一,本篇就是介绍SQL Server备份原则,SQL Server数据库分为数据文件和日志文件.为了使得数据库能够恢复一致点,备份不仅需要拷贝数据数据文件里的内容,还要拷贝日志文件里的内容.那么根据每次备份的目标不同,我们可以将备份分为数据备份和日志备份. 数据备份的范围可以是完整的数据库.部分数据库.一组文件或文件组.所以根据备份下来的数据文件的范围,又分为了完整数据库备份.文件备份和部分备份. 完整数据库备份 完整数据库备份

Excel表数据导入Sql Server数据库中

Excel表数据导入Sql Server数据库的方法很多,这里只是介绍了其中一种: 1.首先,我们要先在test数据库中新建一个my_test表,该表具有三个字段tid int类型, tname nvarchar类型, tt nvarchar类型(注意:my_test表中的数据类型必须与Excel中相应字段的类型一致) 2. 我们用SELECT * FROM  OPENROWSET( 'Microsoft.Jet.OLEDB.4.0 ', 'Excel  5.0;DatabASE=[Excel表

如何将Sql server数据库中的模型图转化到Word中--并能够查看字段的属性信息

1. 在Sql server数据库中创建数据库的模型图 -- Database Diagrams 2. 控制面板--管理工具--ODBC数据源链接--创建一个Sql server的数据源链接 3. 打开Visio工具,打开数据库模型--Database--Reverse Engineer[反向工程] 选择要导入到Visio中的表: 4. 将DB的表结构导入到Visio中,界面可能需要略微调整一下 可以在Visio中查看字段的详细信息 将Visio保存成一个文件. 5.打开Word,插入对象 将V