2010-05-16 50 views
0

我有一張表,其中的字段長度爲40 varchars,但有時我必須在那裏存儲文本(長度爲250-1000個字符)。如果試圖將其放入表格中,或者只是爲每個表格創建一個單獨的文本文件,那麼最好的解決方案是什麼?我是否在表格或單獨的文本文件中存儲長字符串?

謝謝!

+0

可能重複:http://stackoverflow.com/questions/1438471/is-it-good-to-store-long-string-in-a-database – 2010-05-16 09:31:12

+1

我不明白......它通常是40個字符長,有時會變成250-1000個字符長。如果它不完全一樣,你應該使用2個不同的表格列。 也許澄清你的問題的具體情況。 – nico 2010-05-16 09:31:27

+0

>>>也許可以澄清你的問題的細節。 假設我需要列,一個EVEN,另一個DATA。例如,如果EVEN'有車,車牌',那麼DATA就是'ABC-123'。或者,如果偶是「結婚,妻子的名字」,那麼DATA就是'簡'。但是,如果EVEN'有10頁的字母',那麼DATA會包含一串相當長的文本。所以問題是,是否值得在數據庫中存儲很少量的文本,或者最好將它們存儲在單獨的文本文件中,並將其存儲在數據庫中。 – 2010-05-16 09:37:38

回答

3

更好地把一切都在數據庫中,那麼你就必須通過循環遠程訪問數據庫時跳(或做備份時)

+0

但是,如果95%的時間不會包含超過40個字符的數據字段,比如說1000個字符以上的數據字段是否合理? – 2010-05-16 09:40:32

+0

@ user296516:當存儲40char字段時,varchar(2048)字段不會比varchar(40)字段更多(讀取:非常少,如果有的話,則忽略delta)空間。 Anders對我來說是正確的+1! – lexu 2010-05-16 09:45:37

+0

是的,你是對的!我將varchar從40更改爲500,數據庫大小甚至沒有改變! :) 謝啦! – 2010-05-16 09:53:40

4

您應該使用text類型,而不是varchar那裏。

相關問題