给定一个包含用户详细信息的配置文件表 - 在数据库中存储允许的可选图片的最佳方法是什么。
每个用户都有一张主要的个人资料图片 - 然后是三个可选的额外图片。为了潜在的可扩展性和可维护性,我想也许三个可选图像可以存储为某种类型的数组(〜如果它们选择不具有任何可以是可以为空的字段)
请有人就最佳方法提出建议。
由于
答案 0 :(得分:1)
您应该创建一个单独的表来保存图片,避免创建包含CSV数据的列,因为每次使用时都需要拆分CSV。更不用说更新专栏可能是一场噩梦。
create table picture(
picture_id int,
picture_file blob, /* If storing the file name use varchar*/
profile_id int /* FK to USER */
)
然后在Profile
表中通过外键来显示主要的个人资料图片。
create table user(
profile_id int,
profile_picture_id int /* FK to main picture */
)
答案 1 :(得分:0)
不,不要将它们存储在数组中 -
创建一个单独的表,让你的profileId成为该表的外键。
table images(
profileId int,
image varchar
)