我的表中有一个数据列,其中存储“图像”(SQLDBType)类型,即。它具有二进制数据。我想通过C#读取SQLDataReader中上述列的值。我用了这个功能
dr.GetBytes(6,0,Data,0,length);
6->我的专栏号码
0->从哪里开始读取索引
数据->我想读取的缓冲区
0->我要复制的缓冲区中的索引
length->要读取的数据的长度。
现在我想获取数据列中二进制数据的长度(在这里,我已经使用了上面的length变量)。
怎么做?
您可以在使用SQLDATALENGTH
函数的查询中添加另一列。首先读取该列的值,然后分配缓冲区并使用GetBytes
。
顺便说一句,您应该远离image
。
在将来的Microsoft SQL Server版本中,将删除ntext,text和image数据类型。避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序。请改用nvarchar(max),varchar(max)和varbinary(max)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句