我目前维护一个单独的数据库表,它具有存储在文件系统中的图像的一些信息。此设置适用于我目前记录的数十万张照片。两个图像表或一个用于存储默认图像?
对于用户默认图像,我维护一个包含照片的单独文件夹,但这已成为维护的噩梦。我应该创建第二张表,存储对表1默认照片的引用,还是在表1中添加一个新字段是一个更好的布尔值,我可以将其设置为指示默认照片?
我的表看起来是这样的:
image_table
id user_id file_name
1 6 xvy.jpeg
2 6 abc.jpeg
3 6 def.jpeg
建议解决办法:
image_table
id user_id file_name default
1 6 xvy.jpeg 0
2 6 abc.jpeg 1
3 6 def.jpeg 0
在此提出的解决方案就好像我需要做两个SQL调用重置默认,然后第二个电话设置一个新的默认照片,如果用户更改它...
这很有道理,虽然它似乎像mysql查询可能会得到凌乱的尝试重置值,并将其分配给另一个字段的默认照片... – Paul 2013-03-14 23:58:24
您可以对您所在的同一张表执行外键引用(称为自加入) - 因此您可以拥有您想要的查询结构,而无需创建新表。 – Patashu 2013-03-15 00:00:21
我添加了一个建议的解决方案,据我所知,仍然需要两次SQL调用才能更改默认照片... – Paul 2013-03-15 00:04:52