我正计划为当地博物馆的照片库设计一个 PHP MySQL 数据库。
现在让我害怕的一件事是如何为使用多种技术或材料来设计它们的项目实现为单个图像保存多个关键字,例如绘画技术:(衬里,擦拭,涂抹),使用的材料:(油,帆布,)。
理想情况下,我必须使用选择选项列表来为每条记录保存它们。但是,如果我想从同一个列表中保存两个或多个单词,我不能。
你有什么建议我可以考虑吗?
约瑟夫
您需要在图像表和关键字表之间实现一对多的关系。一张图片可以有很多关键词。关键字表中的每一行都需要通过外键引用图像表中的一行。例如:
images
id | asset
---------------
1 | image1.png
2 | image2.png
keywords
id | image_id | keyword | category
-----------------------------------------------
1 | 1 | liner | painting techniques
2 | 1 | wiping | painting techniques
3 | 1 | scumbling | painting techniques
3 | 2 | oil | material used
或类似的规定。这就是您允许一行(图像)与不同表中的多行(关键字)相关联的方式。
对于提交的每个关键字,您将在关键字表中添加另一行,确保引用关联的图像。