什么SqlDbType映射到varBinary(max)? SqlDbType.VarBinary说它被限制为8K。 SQL Server文档说varbinary(max)可以存储aprrox。 2GB。但是SqlDbType.VarBinary说它仅限于8K。
什么SqlDbType映射到varBinary(max)?
12
A
回答
21
SqlDbType.VarBinary长度为-1是VARBINARY相当于(MAX),至少理论上是这样。但问题有点复杂,因为还有一个类型(不是枚举值),即可以使用的SqlTypes.SqlBytes
。并且有SqlTypes.SqlFileStream
,它们也可以用于VARBINARY(MAX)
类型,当它们具有FILESTREAM
属性时。
但问题是,这些枚举或类型都没有涉及与ADO.Net中的VARBINARY(MAX)
列一起使用的实际问题:内存消耗。所有这些类型,如果使用“即装即用”,将在内存中创建作为单个数组分配的值的副本,这最多是不可用的,但随着内容变得越来越大,变得不可用,因为分配失败。我有一对夫妇,显示使用流语义避免在内存中的全部内容拷贝的创作ADO.Net处理VARBINARY(MAX)
值的正确方法文章:
0
这可能帮助:http://msdn.microsoft.com/en-us/library/a1904w6t.aspx
丑,因为它可能是,SqlDbType.Image似乎是要走的路。看起来我需要更新我的ORM,因为现在任何超过8k的数据都会破坏它。
5
相关问题
- 1. 如何使用NHibernate ByCode映射映射SQL Server`varbinary(max)`字段?
- 2. EF4将varbinary(max)映射到二进制 - 代码优先错误
- 3. SqlDbType枚举映射 - C#
- 4. varbinary(max)捕获和存储OLE映像
- 5. NHibernate的:存储VARBINARY到MAX
- 6. HttpPostedFileBase varbinary(max)
- 7. SQL Server VARBINARY(MAX)
- 8. 读VARBINARY(MAX)从SQL Server到C#
- 9. 截断VARBINARY(max)列到指定长度
- 10. 将文件保存到varbinary(max)字段?
- 11. 为什么SQL Server上varbinary(max)的UPDATE语句如此之慢?
- 12. 为什么sp_columns显示'image'作为varbinary(max)类型的type_name?
- 13. Varbinary(max)图像Visual Studio 2008
- 14. 很慢VARBINARY(MAX)选择
- 15. 如何从VARBINARY(MAX)WPF
- 16. syscall.Stat_t.Dev映射到什么地方?
- 17. ApplicationPoolIdentity映射到什么地方?
- 18. GUID_SysMouse映射到什么地方?
- 19. T-SQL CONVERT()等价于VARBINARY的NHibernate映射到VARCHAR
- 20. SqlDbType在Oracle中转换为什么?
- 21. 为什么DBNull.Value需要适当的SqlDbType?
- 22. 什么是所有异常映射到404.html和什么异常映射到500.html
- 23. Hibernate映射 - 映射到表
- 24. 什么java映射库可以从Map <String,Object>映射到pojo/bean?
- 25. Hibernate:这个映射到外键上的子类的映射有什么问题?
- 26. EntityFramework映射 - 这个映射有什么问题?
- 27. 多映射与矢量映射的优点是什么?
- 28. 为什么hash映射比trie映射好?
- 29. 让Stream进出VarBinary(MAX)列? (SQL Server)
- 30. 现有的varbinary(max)是否使用FILESTREAM?
我用-1,它工作正常 – Abacus 2013-06-06 16:49:36
真奇怪的是,上述没有为我工作。我必须写:dtProducts.Columns.Add(new DataColumn(“Cover”,typeof(byte [])){AllowDBNull = true});注意字节[] ...这是为我工作。 – Johan 2013-10-29 07:22:54