mysql字段用 0 1好处_为什么数据库表要用一对一的关系? 有什么好处.

下面是jForum论坛的两张数据库表, 第一张表是帖子的一些属性, 第二张表是帖子的内容, 两张表是一对一的关系.

我不明白为什么要用一对一的关系, 直接放在一张表里不好吗? 这样只操作一张表, 很好维护.

一对一的关系有什么好处?难道是把大字段单独存可以提高查询性能吗?

CREATE TABLE jforum_posts (

post_id INT NOT NULL auto_increment,

topic_id INT NOT NULL default '0',

forum_id INT NOT NULL default '0',

user_id INT NOT NULL default '0',

post_time datetime default NULL,

poster_ip varchar(15) default NULL,

enable_bbcode tinyint(1) NOT NULL default '1',

enable_html tinyint(1) NOT NULL default '1',

enable_smilies tinyint(1) NOT NULL default '1',

enable_sig tinyint(1) NOT NULL default '1',

post_edit_time datetime default NULL,

post_edit_count INT NOT NULL default '0',

status tinyint(1) default '1',

attach TINYINT(1) DEFAULT '0',

need_moderate TINYINT(1) DEFAULT '0',

PRIMARY KEY  (post_id),

KEY (user_id),

KEY (topic_id),

KEY (forum_id),

KEY(post_time),

INDEX (need_moderate)

) TYPE=InnoDB;

CREATE TABLE jforum_posts_text (

post_id INT NOT NULL PRIMARY KEY,

post_text TEXT,

post_subject VARCHAR(100)

) TYPE=InnoDB;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值