For at gemme et billede som en BLOB (Binary Large Object) i en MySQL-database, skal du bruge en sætning som denne:
INSERT INTO table_name (column_name) VALUES (LOAD_FILE('/path/to/image.jpg'));
- `tabelnavn` er navnet på databasetabellen, hvor billedet skal gemmes
- `kolonne_navn` er navnet på kolonnen i tabellen, der skal indeholde billedet
- `/path/to/image.jpg` er stien til din billedfil.
For eksempel, hvis du har et billede med navnet "mit_billede.jpg" gemt på din computer, og du vil gemme det i en tabel med navnet "fotos" i din database, vil du bruge følgende sætning:
INSERT INTO photos (image) VALUES (LOAD_FILE('/Users/mitusername/Desktop/my_picture.jpg'));
Efter at have kørt denne sætning, vil billedet blive gemt som en BLOB i "image"-kolonnen i "photos"-tabellen.
For at hente billedet fra databasen kan du bruge LOAD_FILE()-funktionen igen. For at hente billedet, der er gemt i "image"-kolonnen i "photos"-tabellen og gemme det som "retrieved_image.jpg" i din lokale mappe, kan du bruge følgende sætning:
VÆLG LOAD_FILE(image) INTO OUTFILE '/path/to/retrieved_image.jpg' FRA fotos;
Det er vigtigt at sikre, at MySQL-brugeren, der udfører INSERT-sætningen, har de nødvendige rettigheder til at læse og skrive filer. Derudover skal du være opmærksom på den maksimalt tilladte BLOB-størrelse i din specifikke MySQL-konfiguration, da den kan begrænses afhængigt af version og indstillinger.