我有一個工作的SQLite數據庫,其中包含有關視頻文件的信息。目前的設計如下圖所示。但是,老闆決定做一些改變。數據庫設計建議
的FileProperties表目前使用的文件名作爲主鍵。然而,PK現在必須是文件名稱和(文件)位置的複合關鍵字,無論如何,這更有意義。
如果這樣做了,將這個複合鍵作爲外鍵引用到其他表中的最佳方法是什麼?我想創建一個單獨的表,其中包含一個自動遞增的主鍵,文件名和位置。然後PK可以用作所有其他表的外鍵引用。
或者,讓文件名和位置組合鍵在當前FileProperties表並添加可以作爲參考,這個字段必須是自動遞增的和獨特的表中的一個新的領域。
我還沒有太多的設計數據庫實踐經驗,所以任何與我的問題或我目前的設計意見將非常受歡迎。
確保您的文件名和位置足夠大。如果「位置」是一個路徑,那麼它可能會比50大。另外,對於文件名,NVARCHAR可能是更好的選擇。 – Blazes 2011-05-19 08:23:09
+1布拉斯。 NVARCHAR應該是默認的,除非很有可能需要更大的空間。特別是對於Oracle--文本字段以大型對象的形式存儲,這是一個很難使用的問題。 – 2011-05-19 08:28:55