在 MySQL 資料庫中儲存影象
Preet Sanghavi
2024年2月15日
在本教程中,我們旨在瞭解如何在 MySQL 資料庫中儲存影象。
標準 SQL 使用 BLOB
(二進位制大物件)資料型別來儲存大量資料。
位元組或八位位元組的序列定義了一個二進位制字串,通常用於在 MySQL 資料庫中儲存大型影象或媒體檔案,例如音訊和視訊資料。BLOB
值可以靈活地根據要求將其寫為二進位制或字串值。
讓我們嘗試瞭解這是如何工作的。
首先,我們建立一個名為 student_details
的表,其中包含 stu_photograph
列。在這裡,影象的照片將儲存在 stu_photograph
列中。
-- Using the following table as an example:
CREATE TABLE stu_information(
stu_photograph BLOB
);
現在讓我們在表格中插入學生照片,其中 stu_photograph
作為需要放置影象的列。
注意
在
LOAD_FILE
函式中,我們輸入要上傳到 MySQL 資料庫中的影象路徑。此函式幫助我們將影象儲存在 BLOB
中。-- This will insert a file in a BLOB column.
INSERT INTO stu_information (stu_photograph) VALUES(LOAD_FILE('/image_path/image_fileName.png'));
上面的程式碼將在表 student_details
中輸入學生資料。我們可以使用以下命令視覺化此表:
select * from stu_information;
上述程式碼塊將生成以下輸出:
正如我們在上面看到的,stu_photograph
列是使用 BLOB
資料支援建立的,用於儲存影象。
注意
在將影象新增到
stu_photograph
列之前,請確保在 MySQL 使用者中新增影象許可權。我們可以通過登入根目錄並執行以下命令來授予 FILE
許可權:
GRANT FILE ON *.* TO 'mysql_user'@'localhost';
作者: Preet Sanghavi