当前位置: 首页 > 面试题库 >

将图像存储为base64string(varchar(max))或varbinary

彭胡媚
2023-03-14
问题内容

各自的优缺点是什么?

我的要求是:

  1. 我希望能够加密图像
  2. 可以通过Web服务器(RESTful API)在移动设备上轻松访问
  3. 可通过本地数据库(如SQLLite)在移动设备上轻松访问

服务器端使用的数据库是MS SQL2005。我相信SQLLite和MS SQL
2005可以同时支持varchar和varbinary(sqllite上的BLOB)


问题答案:

Base64在一个字节中仅使用8位中的6位。它可以追溯到通过不安全7位的线路传输电子邮件的时间。

那时,您会将图像存储为二进制Blob,因为这需要少33%的存储空间。然后,当客户端请求base64编码的字符串时,您可以即时对其进行转换。转换为base64非常便宜。

今天,这仍然有意义-将其存储为binary,并按照客户端的要求进行传输。



 类似资料:
  • 问题内容: 我从表(源)中进行操作,其中每一列都是数据类型。 列之一存储二进制数据,例如 我在其中插入目标表的列具有相同的列,但数据类型为。 当我插入它时,然后选择目标表,我从该列中得到了一个不同的值: 它看起来似乎并不真正具有相同的价值。 什么应该是转变作为二进制数据存储的正确方法,以列? 问题答案: 您得到的结果是因为字符串“0003f80075177fe6”(一个值)被转换为代码点,并且这些

  • 问题内容: 是否可以将SQL Server 2008数据库中的列类型从更改为,而不必删除表并重新创建? 每当我尝试使用SQL Server Management Studio进行操作时,SQL Server Management Studio都会向我抛出一个错误-但是让我头疼的是,很高兴知道我是否可以更改类型而不必删除和创建。 谢谢 问题答案: 您应该能够使用TSQL做到这一点。 就像是

  • 问题内容: 在我的代码中,我设法用CoreData保存了textLabel,但似乎无法正确保存图像。我已经阅读了一些教程,并且知道必须将其转换为NSData。但是我该怎么做呢? 提前致谢! 问题答案: 核心数据并不是要保存图像等大的二进制文件。而是在文件系统中使用文档目录。 这是实现此目的的示例代码。 建议将零件以及与该图像关联的其他元数据保存到核心数据中,并在每次需要时从文件系统中检索。 编辑:

  • 主要内容:Mat类,方法和描述,创建和显示矩阵,使用JavaSE API加载图像要拍摄图像,我们可使用相机和扫描仪等设备。 这些设备记录图像的数值(例如:像素值)。 OpenCV是一个处理数字图像的库,因此需要存储这些图像进行处理。 OpenCV库的类用于存储图像的值。它代表一个维数组,用于存储灰度或彩色图像,体素体积,矢量场,点云,张量,直方图等图像数据。 这个类包含两个数据部分:头部()和一个指针() 头部 - 包含大小,用于存储的方法和矩阵地址(大小不变)等信息。 指针

  • 问题内容: 如果选择nvarchar(MAX),我不知道字符数是否有限制,而且我不确定无论如何我需要多少个字符。 在这里使用什么标准数据类型?我正在使用SQL Server 2008 R2 问题答案: 不推荐使用该类型,与和一样。微软建议使用替换它们,并分别。 因此使用。 参考: ntext,文本和图像(Transact-SQL)

  • 我从Firebase存储中获取图像,用相机拍照,或者从图书馆中挑选一张。当其中一个完成时,我有一个类来存储,以便在需要时使用它。 现在我需要将此图像上传到Firebase存储(修改或新建,无所谓)。Firebase允许我使用以下选项之一:或,每个选项分别需要或。 我怎么能把我的,并从它获得一个或用于上传? -- 或者,为了解决这个问题,当我从Firebase存储中检索图像时,如何获取图像的? 无论