当前位置:  开发笔记 > 编程语言 > 正文

优雅的数据库设计帮助......(MySQL/PHP)

如何解决《优雅的数据库设计帮助(MySQL/PHP)》经验,为你挑选了2个好方法。

我正在建立一个电影网站...我需要显示每部电影的信息,包括流派,演员和很多信息(像IMDB.com一样)......

我创建了一个包含ID和一些基本信息的"电影"表.对于类型我创建了一个'genres'表,包括2列:ID和流派.然后我使用一个'genres2movies'表,其中包含两列:movieID和genreID,用于连接流派和电影表...

这样,例如,如果一部电影有5种不同的类型,我会在'genres2movies'表的5个不同行中获得movieID.每次为每部电影都包括类型,但是...

有一个更好的方法来做到这一点???

我还需要为演员,语言和国家这样做,因此性能和数据库大小非常重要.

谢谢!!!



1> Shane O'Grad..:

听起来你现在正在遵循正确的规范化规则,这正是你想要的.

但是,您可能会发现,如果性能是一个关键因素,您可能希望对数据的某些部分进行反规范化,因为表之间的JOIN是相对昂贵的操作.

这通常是正确/完全标准化和性能之间的权衡



2> Riho..:

你走在正确的轨道上.这是做多对多关系的方式.数据库大小不会增长太多,因为您使用整数,为了提高速度,您必须为这些ID设置正确的索引.在进行SELECt查询时,请查看EXPLAIN - 它有助于找到速度的瓶颈.

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有