2015-08-22 67 views
-1

我目前在建立一個論壇在PHP它有一個用戶帳戶系統,選項等我有一個MySQL數據庫設置處理帖子。該結構是沿着這樣的線路:將用戶評論存儲在文本文件中有效嗎?

id         [int(11), AI] The ID of the post. 
author        [varchar(20)] The author of the post. 
date         [datetime]  The day the post was published. 

有點原始,是的,但我不想透露我的數據庫結構太多的細節,我希望你能理解。

我原本有一個bigtext專欄用於存儲筆記和註釋。它會一直充滿了一個字符串,像這樣:

user1("comment", "1 Example 2015"), user2("comment 2", "2 Example 2015") 

我會解析它在PHP和顯示相應的說明和評論,但一些閃念:

會發生什麼,如果我用完了空間?

我不知道一個論壇帖子能多少活動得到的,但在情況下,它確實增長到那種程度,或人不斷追加到後一次又一次,什麼會發生在表格行嗎?

因此,我想出了一個的解決方案,使用一個文本文件,填充它的評論,並將其存儲在文件夾只爲該職位。這看起來像是一個存儲註釋的有效方式

+5

這些都不是正確的。創建一個評論表並標準化你的數據。 –

+1

我同意@Ed Cottrell。你必須爲你的用戶準備一張桌子,並在你的評論中加入一張桌子 – aldrin27

+0

你會加入這個非規範化的文本文件嗎? – Drew

回答

2

如果你問是否將數據存儲在文本文件中會起作用,那麼你肯定可以使它工作。這是軟件開發,一百萬種皮膚貓的方法。現在,這是推薦的方式嗎?取決於你與誰交談,但我會親自說不。

您必須記住,這些文本文件也將具有文件大小,僅僅因爲註釋在文件中,並不意味着所使用的磁盤空間會奇蹟般地消失。而且,由於您將使用文件來存儲它們,因此您用SQL查詢和操作數據的許多內置功能都將丟失。我個人會採用一對多的方法,一個職位會有很多評論。看看這篇文章的更多詳細信息:

One to Many MySQL

好運。

+0

這是一個很好的答案。我從來沒有考慮到SQL真正擁有的力量,所以非常感謝! – Gumptastic

0

要創建基本論壇,您至少需要三張表(不包括用戶表)。您需要一個類別,主題和評論表。主題應包含類別ID,評論應包含主題ID。保持一切關係,在遇到任何性能問題之前,您可以增長得相當大。不要忘記索引!