我有一個數據庫,其中幾個表有一列email
用於存儲電子郵件地址。因爲這是調查,很多值將相同,更可能相同的名稱,地址等我的數據庫中應該有一個主郵件地址表嗎?
我應該只有一個主Emails
表,然後email_id
列?這樣,我只能存儲一次電子郵件字符串,而不是在表格中多次存儲。但是,如果我想確保我只存儲了唯一的電子郵件地址,那麼索引是否會檢查字符串的唯一性並不存在一些限制,因此我可能會存儲多個長電子郵件地址的副本?
在調查數據庫中,我們存儲他們提交的電子郵件地址。如果他們選擇加入郵件列表,我們將這些郵件列表(每個會員一封電子郵件)存儲在郵件列表成員表中,因此該表中可能會有多個相同的地址,具體取決於他們加入的俱樂部數量。現在我添加一張表來跟蹤反彈電子郵件,因爲這是電子郵件地址的屬性,而不是調查或郵件列表成員資格。我在想,「這是很多字符串連接!」
這是「One True Lookup Table」的一種形式嗎?
我聽到你在說什麼,但是當這些瓶頸成爲問題時,整個現場運行的應用程序就建立在他們身邊,要說服老闆讓我花費大量時間仔細解構網站上的所有內容都存在停機,數據丟失等風險,只是爲了在事件成爲問題時將事情做好。我已經不喜歡我的加入反彈;會有未來的表格! 事實是,我正在開發*現在*,我可以正確*現在*,如果我確實做得正確,現在,我不會在晚些時候打開病人檢索鑷子。 – user151841 2010-08-20 16:45:02
@ user151841:有很多事情可以浪費時間在*現在*。你可以浪費時間微調'++'操作符。你可以浪費時間微調優化以'<或'<='結尾的循環。在瓶頸進行字符串比較時,情況不會突然停止運行。你會注意到退化,做分析,發現問題。所有性能優化都涉及重寫。最初不應該進行性能「優化」。獲取數據模型** ** **。這是最重要的。 – 2010-08-20 18:34:07