我想存储类似于Google云端硬盘的文件结构。我可以创建几种类型的文件(文档,电子表格,..)。每个文件的详细信息都存储在其表中。
例如:
File [id, name, file_id]
Doc [file_id, title, a, b, c]
Spreadsheet [file_id, title, d, e]
如何正确处理?
答案 0 :(得分:0)
文件
[ID,名称,文件ID]
文档类型,最终成为类别列表表
[文件ID,标题,扩展名]
然后以Doc_type为例:
|file_id | title | extension|
|0001 | Word | DOCX |
|0002 | Excel | XLSX |
答案 1 :(得分:0)
外键不是这样工作的。您需要File.id作为主键,然后将File.id添加到其他每个表中,并使每个表都具有File.id的外键。从实际意义上讲,创建一个File实例,然后创建一个Doc或Spreadsheet并将其链接到File实例。