Navicat使用教程:使用Navicat在MySQL中存儲(chǔ)圖像
Navicat Premium是一個(gè)數(shù)據(jù)庫(kù)開發(fā)工具,可讓您從單個(gè)應(yīng)用程序同時(shí)連接到MySQL,MariaDB,MongoDB,SQL Server,Oracle,PostgreSQL和SQLite數(shù)據(jù)庫(kù)。與Amazon RDS,Amazon Aurora,Amazon Redshift,Microsoft Azure,Oracle Cloud,Google Cloud和MongoDB Atlas等云數(shù)據(jù)庫(kù)兼容。您可以快速輕松地構(gòu)建,管理和維護(hù)數(shù)據(jù)庫(kù)。本文介紹了Navicat如何使存儲(chǔ)圖像。
近年來,Web應(yīng)用程序中的圖像數(shù)量一直在穩(wěn)定增長(zhǎng)。還需要區(qū)分不同大小的圖像,例如縮略圖、Web顯示圖像等。例如,我最近開發(fā)的一個(gè)應(yīng)用程序顯示新聞項(xiàng)目,其中每個(gè)項(xiàng)目都有縮略圖和主要文章圖像。另一個(gè)應(yīng)用程序顯示大小不同的公司徽標(biāo)。
大多數(shù)情況下,圖像可以存儲(chǔ)在Web服務(wù)器上,然后使用URL進(jìn)行引用。這只需要將路徑字符串存儲(chǔ)在數(shù)據(jù)庫(kù)中,而不是圖像本身。但是,有時(shí)這是不可行的,例如應(yīng)用程序?qū)ξ募到y(tǒng)的權(quán)限不足。在這些情況下,您可以將圖像直接存儲(chǔ)在數(shù)據(jù)庫(kù)中,然后使用應(yīng)用程序代碼加載它們。
Navicat開發(fā)和管理工具為圖像管理提供了出色的支持。在今天的文章中,我們將學(xué)習(xí)Navicat如何使存儲(chǔ)圖像變得簡(jiǎn)單。出于演示目的,我將針對(duì)MySQL 8數(shù)據(jù)庫(kù)使用Navicat Premium,但相同的過程也將適用于其他關(guān)系數(shù)據(jù)庫(kù)。
設(shè)計(jì)表
在MySQL中,用于圖像存儲(chǔ)的首選數(shù)據(jù)類型是BLOB。但是,實(shí)際上有三種BLOB。您選擇的圖像取決于要存儲(chǔ)圖像的大小。如有疑問,請(qǐng)轉(zhuǎn)到更大容量的BLOB!這是三種BLOB類型:
- BLOB:最多可以處理65535個(gè)字節(jié)的數(shù)據(jù)。
- MEDIUMBLOB:支持的最大長(zhǎng)度為16777215字節(jié)。
- LONGBLOB:最多存儲(chǔ)4294967295字節(jié)的數(shù)據(jù)。
考慮到這一點(diǎn),這是一個(gè)非常適合縮略圖圖像的表定義,但不會(huì)太大:
除了圖像本身以外,您可能會(huì)發(fā)現(xiàn)存儲(chǔ)有關(guān)圖像的其他信息,例如ID、名稱、描述、大小、類型(JPEG、GIF、BITMAP等)、類別等也很有用。
將圖像加載到圖像表中
使用Navicat,無需編寫SQL代碼即可加載圖像。相反,您可以使用標(biāo)準(zhǔn)的文件瀏覽器來查找和插入圖像文件。
無論何時(shí)在“表格網(wǎng)格”視圖中查看表內(nèi)容,都可以從數(shù)據(jù)類型下拉列表中選擇希望Navicat處理數(shù)據(jù)的方式:
從下拉菜單中選擇“圖像”會(huì)在表/行內(nèi)容下方添加一個(gè)圖像預(yù)覽窗格:
在文件預(yù)覽的左側(cè),您將找到三個(gè)圖標(biāo):“加載”,“保存到磁盤”和“清除”。要加載圖像,只需單擊“加載”圖標(biāo),然后使用操作系統(tǒng)的標(biāo)準(zhǔn)“文件瀏覽器”對(duì)話框選擇圖像。插入后,圖像及其大?。ㄒ宰止?jié)為單位)將顯示在預(yù)覽窗格中:
請(qǐng)注意,上圖需要MEDIUMBLOB,因?yàn)槠浯笮〕^65535字節(jié)!
結(jié)論
在今天的博客中,我們學(xué)習(xí)了如何使用Navicat Premium 15將圖像存儲(chǔ)在MySQL 8數(shù)據(jù)庫(kù)中??梢?u>下載Navicat Premium最新版免費(fèi)體驗(yàn)一下~
現(xiàn)在是購(gòu)買Navicat Premium的絕佳時(shí)機(jī),因?yàn)榈?5版增加了100多項(xiàng)增強(qiáng)功能,并包括一些新功能,可為您提供比以往更多的構(gòu)建,管理和維護(hù)數(shù)據(jù)庫(kù)的方式!
相關(guān)內(nèi)容推薦: