MySQL データベースに画像を保存する
Preet Sanghavi
2023年1月3日
このチュートリアルでは、MySQL データベースに画像を保存する方法を理解することを目的としています。
標準 SQL は、BLOB
(バイナリラージオブジェクト)データ型を使用して大量のデータを格納します。
バイトまたはオクテットのシーケンスは、バイナリ文字列を定義します。通常、MySQL データベースにオーディオやビデオデータなどの大きな画像やメディアファイルを保存するために使用されます。BLOB
値は、要件に応じてバイナリ値または文字列値として柔軟に記述できます。
これがどのように機能するかを理解してみましょう。
まず、stu_photograph
列を持つ student_details
という名前のテーブルを作成します。ここでは、画像の写真が 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