如何将图片存到数据库中

如何将图片存到数据库中,第1张

保存图片数据库中,有两种方法:

1、一种是用大对象,即blob型,对c#不了解,但是java、c++中都有专门 *** 作blob的对象,应该是以二进制流的方式走的。但是不建议采用这样的管理方式,会加重数据库、程序负担,即使是手机开发也是如此。

2、图片保存在本地,数据库中用字符串存储地址,这样的方式比较好,也较易实现。但是缺乏安全性,把图片重命名就行了,改个后缀,一般人就不会打开。还是不放心,用二进制加密下就好,这样的程序代价仍然要比存在数据库大对象中要好。

1、打开开始菜单栏,在菜单栏上找到我们已经安装的SQL server 2008,单击打开它。

2、打开SQL server 2008数据库,来到登录界面,在这里我们只需要输入登录服务器名(电脑IP地址)、登录身份、账号、密码,然后单击登录。

3、成功登录进入SQL 数据库,可以看到连接的数据库基本信息,展开数据库结点,单击数据库然后使用鼠标右键,在d出的菜单中选择附加。

4、接着d出附加数据库的界面,这里我们只需要单击界面上的添加按钮就可以了。

5、单击添加按钮后,新d出来一个框,让你选择你要附加的数据文件路径,选择到我们要附加的数据库文件,单击确定按钮。

6、返回到附加数据库的界面,这是我们可以从界面上看到选择的附加数据库文件信息,然后在上方可以修改要附加的数据库名称。

7、单击确定按钮后,数据库的附加功能就启动了,这时候我们可以从界面上看到附加的进度。

第一步://获取当前选择的图片this.pictureBox1.Image = Image.FromStream(this.openFileDialog1.OpenFile())//获取当前图片的路径string path = openFileDialog1.FileName.ToString()//将制定路径的图片添加到FileStream类中FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read)//通过FileStream对象实例化BinaryReader对象BinaryReader br = new BinaryReader(fs)//通过BinaryReader类对象的ReadBytes()方法将FileStream类对象转化为二进制数组byte[] imgBytesIn = br.ReadBytes(Convert.ToInt32(fs.Length))第二步://将图片添加到数据库中string sql="insert into pic values(@pic)"SqlParameter[] param = new SqlParameter[] { new SqlParameter("@pic", imgBytesIn) }DBHelper.GetExecuteQuery(sql, param)第三步://将图片从数据库中取出string sql="select * from pic where id=0"SqlDataReader reader = DBHelper.GetExecuteReader(sql, null)MemoryStream mss = null


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9994833.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存