我永遠無法決定在將數據插入數據庫或將其拉出之前更好地格式化數據。在插入數據庫之前或之後格式化數據?
我不是在談論數據消毒;我們都知道要防範SQL注入。我說的是,如果用戶給你一個URL,並且它沒有http://在它之前,你應該在將它插入數據庫之前添加它還是將它拉出來?更復雜的事情呢,比如格式化一大堆文字。我想在之前還是之後用HTML標記它(或將其去掉)?如果我稍後改變主意並想要以不同的方式進行格式化,該怎麼辦如果我已經格式化了它,我無法做到這一點,但如果我將它存儲爲未格式化的,我可以做到這一點......但是,我每次從數據庫中提取一段數據時都會做額外的工作,完成一次並完成它。
你的想法是什麼?
從答案,似乎有一個普遍的共識是東西像URL,電話號碼和電子郵件(有一個明確定義的格式的任何東西),應先標準化,以統一的格式。像文本這樣的東西通常應該保持原始或以可操作的格式來實現最大的靈活性。如果速度有問題,則可以存儲這兩種格式。
+1:數據庫必須絕對一致。 – 2009-04-08 21:00:13
+1:對於剛剛計劃在其他地方檢索和重用的數據很重要,而對於可能使其成爲WHERE子句的數據,CRITICAL很重要。 – ojrac 2009-04-08 21:56:58