利用OpenFileDialog 获取图片存储到数据库中
private void button1_Click(object sender, EventArgs e)
{
string fName;
OpenFileDialog openFileDialog = new OpenFileDialog();//实例化
openFileDialog.InitialDirectory = "e:\\141\\";//打开的默认路径
openFileDialog.Filter = "图像文件 (*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG";
openFileDialog.RestoreDirectory = true;
openFileDialog.FilterIndex = 1;
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
fName = openFileDialog.FileName;
//textBox1.Text = File.ReadAllText(fName);
FileStream fs=new FileStream (fName ,FileMode.Open );
byte [] imgbt=new byte [fs .Length ];
BinaryReader br = new BinaryReader(fs);
imgbt = br.ReadBytes(Convert.ToInt32(fs.Length));
string cnnstr = "server=.;User ID=sa;Password=admin;Database=student";
SqlConnection conn = new SqlConnection(cnnstr);
conn.Open();
SqlCommand comm = new SqlCommand();
comm.Connection = conn;
string sql = "insert into a values('01',@image)";
comm.CommandType = CommandType.Text;
comm.CommandText = sql;
comm.Parameters.Add("image", SqlDbType .Image , imgbt.Length);
comm.Parameters[0].Value = imgbt;
comm.ExecuteNonQuery();
conn.Close();
}
再读取出来
SqlDataReader dr = comm.ExecuteReader();
while (dr.Read())
{
if (dr["imagetest"] != DBNull.Value)
{
MemoryStream ms = new MemoryStream((byte[])dr["imagetest"]);//把照片读到MemoryStream里
Image imageBlob = Image.FromStream(ms, true);//用流创建Image
pictureBox1.Image = imageBlob;//输出图片
}
else//照片字段里没值,清空pb
{
pictureBox1.Image = null;
}
}
利用OpenFileDialog 获取图片存储到数据库中的更多相关文章
- Java中获取刚插入数据库中的数据Id(主键,自动增长)
public int insert(String cName, String ebrand, String cGender) { String sql = "insert into Clot ...
- 利用SQL语句查找某数据库中所有存储过程包含的内容(转)
Use 数据库DECLARE @ProcName varchar(50)Create Table #tmpName(Content varchar(2000))Create Table #tmp(P ...
- 利用Jquery获取、设置iframe中元素
<iframe id="iframe" src="'+url+'"></iframe>'; //iframe加载完成后 $(" ...
- 获取SQL Server数据库中的表和字段描述
获取所有dbo表的扩展属性: SELECT * FROM fn_listextendedproperty (NULL, 'schema', 'dbo', 'table', default, NULL, ...
- 利用SQL语句查询一个数据库中的所有表
SQL : select * from information_schema.tables ORACLE: select table_name from user_tables ACCESS: s ...
- 如何简单地利用Bitmap为中介储存图片到数据库中
这是我的第一篇博文,请大家多多指教! 大概一个月之前,在跟朋友合作开发一个APP的过程中,我们发现到一个问题:图片的存储.因为数据库没有图片这种数据类型,当用户上传的图片需要存储的时候 ...
- MVC模式:实现数据库中数据的增删改查功能
*.数据库连接池c3p0,连接mysql数据库: *.Jquery使用,删除时跳出框,确定是否要删除: *.使用EL和JSTL,简化在jsp页面中插入的java语言 1.连接数据库 (1)导入连接数据 ...
- MVC设计模式((javaWEB)在数据库连接池下,实现对数据库中的数据增删改查操作)
设计功能的实现: ----没有业务层,直接由Servlet调用DAO,所以也没有事务操作,所以从DAO中直接获取connection对象 ----采用MVC设计模式 ----采用到的技术 .MVC设计 ...
- Sql server 数据库中,纯SQL语句查询、执行 单引号问题。
在默认值情况下, select 'abc',Titile from tb_Name; ---输出内容 是abc: 如果想输出 单引号 'abc,需要使用select '''abc',Titile f ...
随机推荐
- Android Studio3.3中Cannot resolve symbol ActivityTestRule
最近在看<Android编程权威指南>,在Windows10下安装了Android Studio3.3,边看编练习书中的例子程序,看到第21章""音频播放与单元测试&q ...
- jmeter 不同线程组之间传递变量1
一 采用全局变量在不同线程组之间传递变量的坑 ${__setProperty(newcompanyId,${companyId},)}; 不采用全局变量传递参数,请求报文格式如下: 正确的报文: {& ...
- 马士兵对话京东T6阿里P7(薪水):月薪5万,他为何要离职?
马士兵大佬你知道吗? 你竟然不知道?你怎么可能不知道!你不知道是不可能的! 记得自己的第一行Java代码,你的Hello World是跟着谁学的吗?我的就是马士兵老师! 马士兵是唯一一个在当时讲课是让 ...
- C語言中資料結構(struct)的大小
通常在PC上寫程式時,很少會去管struct會佔掉多少記憶體.當要使用到時,也不會想去用手算到底佔掉多少,大多是直接使用sizeof來做計算.然而sizeof計算出來的值往往不會如我們想的一樣.因為c ...
- AOP之PostSharp2-OnMethodBoundaryAspect
在上一篇中我们了解了简单的OnExceptionAspectAOP面向方向切入,在第一节中我们将继续我们的PostSharp AOP系列的OnMethodBoundaryAspect方法行为的切入,这 ...
- iOS音频Error
最近在cocos应用上发现一个比较奇怪的bug,当应用正在调用录音的时候,按下home键回到后台,然后打开一个音乐播放器播放一个音乐,再回到游戏中游戏就会卡死. 之前录音和播放设置是下方: 播放: [ ...
- 百度地图errorcode: 230 uid: -1 appid -1 msg: APP Scode码校验失败
最近要维护以前师兄的一个android项目,里面用到了百度地图,在我的机器上按照官网的方式获取的SHA1签名+包名申请ak: 然而就是报errorcode: 230 uid: -1 appid -1 ...
- [转] datetime.now、datetime.utcnow以及Django中的timezone.now之间的区别
https://blog.csdn.net/sinat_41898105/article/details/80984298 在我们使用Django做项目时经常会遇到时间的存储与读取不一致的问题 ...
- Java中实现线程通信的三个方法的作用是什么?
Java提供了3个方法解决线程之间的通信问题,均是java.lang.Object类的方法,都只能在同步方法或者同步代码块中使用,否则会抛出异常. 方法名 作 用 final void wait() ...
- 如何基于 Nacos 和 Sentinel ,实现灰度路由和流量防护一体化
基于Alibaba Nacos和Sentinel,实现灰度路由和流量防护一体化的解决方案,发布在最新的 Nepxion Discovery 5.4.0 版,具体参考: 源码主页,请访问 源码主页指南主 ...