每一个产品有多张或任意张图片时如何设计数据库?深圳网站建设公司创络的答案是:将产品数据信息和图片信息分开到两张表。然后在调用数据的时候使用select join来查询即可轻松实现类似功能。这样的功能开发可能对于一些专业的PHP技术员来说,非常简单,但是部分从未接触过类似功能的读者,可能连如何设计数据库都不知道。下面我们就专门针对此来说明一下我们是如何处理的。
首先,通过上图,我们可以了解到一个产品有多张图片(任意张,数量不限)除了需要程序支持,还需要界面支持,不过这没有关系,界面上属于前端工程师的工作,今天我们就单单了解下数据库如何设计。上图中的案例是深圳双键公司新网站的截图(该案例已经开发结束,正在测试阶段,即将上线),从图中我们可以知道,本案例中,每一个产品可以最多有4张图片(含封面/默认显示的图片)。
理论思路相当于是为每一个产品新建一个相册。至于图片的数量,我们可以通过程序来限制,以防客户上传超过4张图片而影响网站界面。当然了,当图片数量小于4张的时候,网站界面也要保持美观,这个属于美工的工作了,我们不理先。我们知道,在产品表中,每一个产品都有一个独一无二的ID值,这个一般需要在数据库里单独新建一个字段,而且设为索引。而在图片表中,我们需要添加I个字段,例如product_id来说明当前图片归属于哪一个产品。
同时,还要注意为每一个产品设置默认显示的图片,还应该给客户保留自主设置封面的功能。最后再查询的时候大家可以使用select join语句非常容易的调用这些数据。select join语句示例:
select * from 产品表 left join 图片表 on 产品表.id=图片表.product_id
现在您是否已经大致了解要如何设计每一个产品有多张或任意张图片时的数据库了呢?感谢您的关注!