sql-server - 在 SQL Server 中保存图像的最佳实践

标签 sql-server image

很多时候我想将图像保存到 SQL Server。我读过一些保存图像的做法:

1)上传并保存图片到服务器,保存表格内的路径

2)将图像保存为二进制

3)将图像保存为base64字符串

4)使用BLOB(我还没有研究它是如何工作的)

当您向服务器请求图像时,您知道哪种“方式”更快吗? 您知道哪种“方式”更好,以免使 SQL Server 变慢吗? 您还知道其他比上述更好的“方式”吗?

谢谢!

最佳答案

微软已经做到了some research关于这个主题并得出结论:这取决于图像的大小。如果您的大多数图像都 < 256Kb,您可能应该使用 VARBINARY。另一方面,如果它们超过 1Mb,那么您应该使用 FILESTREAM(通常存储在数据库文件外部的文件系统上)。

如果您的图像链接到其他数据,将记录本身与图像分离到不同的表中(即创建图像表)通常很有用,这样包含数据的表就会保持较小且易于操作。

关于sql-server - 在 SQL Server 中保存图像的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17199907/

相关文章:

javascript - 循环遍历javascript中的图像数组

image - 从 markdown 到 docx 的 pandoc 转换的图形大小

sql - 如何在SQL中自动生成像UID12345678这样的唯一ID?

sql-server - 获取与多列搜索匹配的列名称

sql - 检查日期时间是否为当前日期

wpf - IsEnabled 时更改按钮图像

Javascript:如何将 Javascript 图像链接到页面?

php - 如何使用 php/javascript/css 制作图片库?

sql - 试图让我的删除语句工作

sql - 为什么我的 T-SQL (WHILE) 不工作?