小白一个,设计了一个社交类的网站,其中例如用户头像图片的表,和用户相册图片的表,这两个表我是应该分开建呢,还是合并成一张表(不同类型的图片用type字段区分),各有什么好处呢?
理论上讲是要两张表分开的,首先一个用户只有一个头像,所以用户ID和头像照片是 1:1的关系;而对于同一个用户和他的相册图片,是1:n的关系,头像的图片和用户相册各有各的表逻辑上比较清晰,方便管理;两张表都用userId与用户关联。但实际上,从数据库角度来讲,放在一个表和分开放,没什么区别,(可能数据量大了以后,在查询效率上有区别)你建立一个图片表,图片表中Type来标定他是头像还是相册照片,然后依然需要在图片表中设置userId来标定它属于谁。
理论上讲是要两张表分开的,首先一个用户只有一个头像,所以用户ID和头像照片是 1:1的关系;
而对于同一个用户和他的相册图片,是1:n的关系,头像的图片和用户相册各有各的表逻辑上比较清晰,方便管理;两张表都用userId与用户关联。
但实际上,从数据库角度来讲,放在一个表和分开放,没什么区别,(可能数据量大了以后,在查询效率上有区别)
你建立一个图片表,图片表中Type来标定他是头像还是相册照片,然后依然需要在图片表中设置userId来标定它属于谁。