logo Navicat使用教程-2019.1 我也要发布文档

使用Navicat在MySQL中存储图像


Navicat Premium是一个数据库开发工具,可让您从单个应用程序同时连接到MySQL,MariaDB,MongoDB,SQL Server,Oracle,PostgreSQL和SQLite数据库。与Amazon RDS,Amazon Aurora,Amazon Redshift,Microsoft Azure,Oracle Cloud,Google Cloud和MongoDB Atlas等云数据库兼容。您可以快速轻松地构建,管理和维护数据库。本文介绍了Navicat如何使存储图像

在线订购 试用下载

近年来,Web应用程序中的图像数量一直在稳定增长。还需要区分不同大小的图像,例如缩略图、Web显示图像等。例如,我最近开发的一个应用程序显示新闻项目,其中每个项目都有缩略图和主要文章图像。另一个应用程序显示大小不同的公司徽标。

大多数情况下,图像可以存储在Web服务器上,然后使用URL进行引用。这只需要将路径字符串存储在数据库中,而不是图像本身。但是,有时这是不可行的,例如应用程序对文件系统的权限不足。在这些情况下,您可以将图像直接存储在数据库中,然后使用应用程序代码加载它们。

Navicat开发和管理工具为图像管理提供了出色的支持。在今天的文章中,我们将学习Navicat如何使存储图像变得简单。出于演示目的,我将针对MySQL 8数据库使用Navicat Premium,但相同的过程也将适用于其他关系数据库。

设计表

在MySQL中,用于图像存储的首选数据类型是BLOB。但是,实际上有三种BLOB。您选择的图像取决于要存储图像的大小。如有疑问,请转到更大容量的BLOB!这是三种BLOB类型:

  • BLOB:最多可以处理65535个字节的数据。
  • MEDIUMBLOB:支持的最大长度为16777215字节。
  • LONGBLOB:最多存储4294967295字节的数据。

考虑到这一点,这是一个非常适合缩略图图像的表定义,但不会太大:

Navicat使用教程:使用Navicat在MySQL中存储图像

除了图像本身以外,您可能会发现存储有关图像的其他信息,例如ID、名称、描述、大小、类型(JPEG、GIF、BITMAP等)、类别等也很有用。

将图像加载到图像表中

使用Navicat,无需编写SQL代码即可加载图像。相反,您可以使用标准的文件浏览器来查找和插入图像文件。

无论何时在“表格网格”视图中查看表内容,都可以从数据类型下拉列表中选择希望Navicat处理数据的方式:

Navicat使用教程:使用Navicat在MySQL中存储图像

从下拉菜单中选择“图像”会在表/行内容下方添加一个图像预览窗格:

Navicat使用教程:使用Navicat在MySQL中存储图像

在文件预览的左侧,您将找到三个图标:“加载”,“保存到磁盘”和“清除”。要加载图像,只需单击“加载”图标,然后使用操作系统的标准“文件浏览器”对话框选择图像。插入后,图像及其大小(以字节为单位)将显示在预览窗格中:

Navicat使用教程:使用Navicat在MySQL中存储图像

请注意,上图需要MEDIUMBLOB,因为其大小超过65535字节!

结论

在今天的博客中,我们学习了如何使用Navicat Premium 15将图像存储在MySQL 8数据库中。可以下载Navicat Premium最新版免费体验一下~

现在是购买Navicat Premium的绝佳时机,因为第15版增加了100多项增强功能,并包括一些新功能,可为您提供比以往更多的构建,管理和维护数据库的方式!

相关内容推荐:

Navicat 使用教程>>>


想要购买Navicat Premium正版授权请点击【在线订购】,想了解更多产品信息请点击【咨询在线客服】