【问题标题】:What is the difference between the sql blob and image typessql blob 和 image 类型有什么区别
【发布时间】:2011-09-01 14:44:10
【问题描述】:

这个问题实际上是我的一位同事今天早上向我提出的,它完全把我扔了,因为我什至没有意识到 SQL 有一个“图像”数据类型,所以我总是简单地走下将文件/图像等压缩成 BLOB 字段的路径。

在(非常)快速浏览完 msdn 之后,我真正能找到的信息是图像数据类型 pages 像 blob 或 varbinary(max) 一样工作,最大 [max] 大小约 2GB,但过去似乎无法找到更多关于它的信息。

我想知道图像数据类型是否是一种在 SQL 中为图像提供可索引/可搜索元数据的方式...?

有没有人可以通过链接或解释的方式提供任何东西?

任何帮助都将不胜感激,在任何回复之前都非常感谢!

更新/可能的答案

经过更多的挖掘,我可能已经在这方面取得了一些进展......

很可能我最初对“图像”类型所涉及的内容的想法有些误导,可能是由于我认为标题为“图像”的类型(我在第一眼看到它显然很误导)与 mimetype 中的图像相关,但似乎更多地推断出“磁盘图像”或“二进制图像”之类的想法。

通过这种方式,IMAGE 类型似乎是在 varbinary 类型被允许作为 (max) 字段之前引入 SQL 的,可能是作为一种在 SQL 中以现在认为理所当然的方式存储文件的方式(我自己至少)使用 VARBINARY(MAX)...

供参考(两者都相当老,但似乎符合要求):

http://channel9.msdn.com/Forums/Coffeehouse/138883-Storing-Retrieving-images-from-SQL-Server-2005

http://www.basenow.com/help/Data_types_in_Microsoft_SQL_Server.asp

如果有人可以对这个可能的答案提出任何建设性的批评,这对于试图理解这一点非常有用......

大家干杯!

【问题讨论】:

  • 澄清一下,平台是MS SQL Server 2005/2008(我认为

标签: sql image types blob


【解决方案1】:

当您引用 Microsoft SQL Server 时,在 IMAGE 和 VARBINARY 数据类型之间进行选择时要牢记的一件重要事情是 Microsoft 正在弃用 IMAGE 类型 - 所以在您的情况下您没有使用它的事实是非常好的事情。

http://msdn.microsoft.com/en-us/library/ms143729.aspx

【讨论】:

    【解决方案2】:

    这取决于供应商,但通常:

    blob/image 数据类型是一种列类型,它将 二进制 数据与其余列分开 存储在数据库中。因此,每次您请求图像/blob 数据时,数据库都会查找位置并读取数据并发回给您。

    一些供应商使用TEXT 数据类型,这与它接受文本数据的区别是相同的,因此您可以在它们上放置全文索引。

    【讨论】:

      猜你喜欢
      • 2016-04-16
      • 2018-03-23
      • 2011-01-06
      • 2012-07-22
      • 1970-01-01
      • 2010-10-02
      • 2021-08-04
      • 1970-01-01
      相关资源
      最近更新 更多