MYSQL存储多个图像

时间:2016-09-15 17:07:45

标签: php mysql

我有一个网页,用户可以上传包含图片的文章。用户可以使用其文章上传的图像数量没有限制。 MySQL数据库中的每一行代表一篇文章。存储所有这些图像的最佳方法是什么。我知道我会使用BLOBS / LONGBLOBS但是如果我无法控制用户上传的图像数量,我就不能为不同的图像插入50列,希望它们上传少于50个。最好的方法是什么此

1 个答案:

答案 0 :(得分:2)

执行此操作的最佳方法是创建一个包含引用该文章的图像的表,以便为您提供如下数据库:

Database Diagram

Images的表格创建脚本如下:

CREATE TABLE `Images` (
    `ImageID` bigint NOT NULL AUTO_INCREMENT,
    `ArticleID` bigint NOT NULL,
    `Image` longblob NOT NULL,
    PRIMARY KEY (`ImageID`)
);
ALTER TABLE `Images` ADD CONSTRAINT `FK_Images` FOREIGN KEY (`ArticleID`) REFERENCES `Articles`(`ArticleID`);

现在,您所要做的就是将图片与其所属的Images一起插入ArticleID