我正计划为当地博物馆的照片库设计一个PHP MySQL数据库。
现在让我感到害怕的一件事是如何为单个图像保存多个关键字,以用于设计多个技术或材料的项目,例如: 绘画技术:(衬里,擦拭,笨拙),材料使用:(油,帆布)。
理想情况下,我必须使用选择选项列表为每条记录保存它们。但如果我想保存同一个列表中的两个或多个单词,我就不能。
你有什么建议吗?
约瑟夫
答案 0 :(得分:2)
您需要在图像表和关键字表之间实现一对多关系。 一个图片可以包含多个关键字。关键字表中的每一行都需要通过外键引用映像表中的一行。例如:
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
或者那些东西。这是允许一行(图像)与不同表中的多行(关键字)相关联的方法。
对于提交的每个关键字,您都会在关键字表中添加另一行,并确保引用相关图像。