2010-11-15 25 views
4

我正在使用Django構建一個網站,並且此網站使用爲某個頁面啓用的塊​​。Python:RE與查詢

現在我使用一個包含路徑的文本字段被啓用了一個塊。當請求一個頁面時,Django從數據庫中檢索所有的塊並在TextField上進行re.search。

但是,我想知道,如果對塊/路徑使用單獨的數據庫表並不是一個更好的主意,那麼每個行包含單個路徑和對塊的引用(就開銷而言)。

回答

1

我對Django並不完全熟悉,但是如果我正確理解情況,則應該使用表格。

實際上,這正是DB軟件的設計和優化使用。

不用擔心。它實際上會更快。

通過自己進行搜索,您試圖自行實現部分數據庫邏輯。當然有趣,但不是那麼快。 :)

這裏是設計數據庫的一些很好的鏈接:

http://dev.mysql.com/tech-resources/articles/intro-to-normalization.html

http://en.wikipedia.org/wiki/Third_normal_form

希望這有助於。祝你好運。 :-)

2

一個單獨的數據庫表絕對是「正確」的方式,因爲mysql每次查詢時都必須從TEXT字段發送所有數據。隨着添加更多行並且TEXT字段變大,您將開始注意到性能問題並最終導致服務器崩潰。此外,您將能夠使用VARCHAR併爲路徑添加唯一索引,從而快速查找。

+0

它也使它更快地更新記錄。 – 2010-11-22 23:23:14