本篇文章给大家分享的是有关C#中如何存储BLOB对象,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
C#存储BLOB对象
检索和C#存储BLOB对象是一个很简单的过程;相反的过程,在 SQL Server 中C#存储BLOB对象,也一样简单。这里我要指出的是,前面的例子中使用了由这个例子中的代码存储到表中的 BLOB 数据
SqlConnection conn =null; SqlCommand cmd = null; SqlParameter param = null; FileStream fs = null; const string sConn = "server=(local);Initial Catalog=Northwind;UID=ctester;PWD=password"; try { conn = new SqlConnection(sConn); cmd = new SqlCommand("UPDATE Categories SET Picture = @Picture WHERE CategoryName = 'Seafood'", conn); fs = new FileStream("c:\\Builder.doc", FileMode.Open, FileAccess.Read); Byte[] blob = new Byte[fs.Length]; fs.Read(blob, 0, blob.Length); fs.Close(); param = new SqlParameter("@Picture", SqlDbType.VarBinary, blob.Length, ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, blob); cmd.Parameters.Add(param); conn.Open(); cmd.ExecuteNonQuery(); } catch (SqlException e){ Console.Write("SQL Exception: " + e.Message()); } catch (Exception e) { Console.Write("Exception: " e.Message()); }
示例代码从本地文件系统插入一个 Word 文档到数据库中。它与常规的数据库更新操作类似,然而,FileStream 和 Bytes 对象用于处理将 Word 文档插入到数据库中。另外一个变化是使用SqlParameter 对象将 BLOB 插入到数据库字段中。这就允许数据可以直接从内存写出到数据库中。
不是所有的数据都是相等的,虽然字符串值是开发人员与数据库交互时最常用的数据类型,但是其它数据类型也经常使用,比如数字和 BLOB。在编程时,将将这些对象视为二进制流对待。以上介绍C#存储BLOB对象。
以上就是C#中如何存储BLOB对象,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。