mysql - 大部分數據沒有行溢出的text字段是否需要拆表
問題描述
比如一個論壇系統的回帖表,多數情況下這個回帖的內容都是簡短的,只有少部分內容長。
而在顯示中這個內容字段是常用的,還有必要把這個內容字段單獨拆出來嗎?
<?phpnamespace KooguaModelEntity;class Reply extends EntityBase{ const STATUS_PENDING = 1; // 待定 const STATUS_APPROVED = 2; // 審通 const STATUS_REJECTED = 3; // 審拒 const STATUS_DELETED = 4; // 刪除 /** * 主鍵編號 * @var integer */ public $id;/** * 回復內容 * @var string */ public $content;/** * 提及用戶 * @var string */ public $mentions;/** * 用戶編號 * @var integer */ public $userId;/** * 主題編號 * @var integer */ public $topicId;/** * 版塊編號 * @var integer */ public $forumId;/** * 置頂標識 * @var integer */ public $sticked;/** * 狀態標識 * @var integer */ public $status;/** * 評論計數 * @var integer */ public $commentCount;/** * 關注計數 * @var integer */ public $watchCount;/** * 收藏計數 * @var integer */ public $favoriteCount;/** * 贊同計數 * @var integer */ public $agreeCount; /** * 反對計數 * @var integer */ public $opposeCount;/** * 舉報計數 * @var integer */ public $reportCount;/** * 創建時間 * @var integer */ public $createTime; /** * 更新時間 * @var integer */ public $updateTime; public function getSource() {return ’Reply’; } public function beforeCreate() {$this->createTime = time(); } }
問題解答
回答1:個人感覺沒必要,從語義上來講內容屬于回帖表比較關鍵的數據,另外分出來的話,每次需要連表查或者分兩次差太麻煩(而且這種基礎數據,幾乎是100%需要的,如果是額外信息到可以考慮放出來)。
另外如果表太大的話,可以考慮分庫分表。
回答2:你可以先把你的表結構,粘貼出來。研究研究,我們在討論討論
回答3:規定回帖字數,沒有必要拆表。
相關文章:
1. python+jinja2編寫前端界面,發生Unexpected end of template問題,求解決!2. python - django orm 過濾日期為當天日期的數據3. css - 如何使用 vue transition 實現 ios 按鈕一樣的平滑切換效果4. javascript - 一個JS的算法,求大神解答5. python - scrapy中返回函數的返回值6. Android "1"=="1" 到底是true還是false7. 熱切期待朱老師的回復,網頁視頻在線播放器插件配置錯誤8. javascript - jQuery中live事件在移動微信端下沒有效果;代碼如下9. angular.js - 指令下的指令 面對上級指令ng-repeat的時候 ng-controller會出現多次的問題?10. java 隨機延遲執行
