悬赏园豆:20
[已解决问题]
解决于 2008-05-27 08:58
<SPAN>
<P align=left>论坛最常用的功能有两个,一是版面首页显示版面的帖子列表;二是显示帖子和帖子回复<BR>现在我建了帖子表<BR>----------------------------<BR>USE [DB_Forum]<BR>GO<BR>CREATE TABLE [dbo].[Forum_Post_tab](<BR> [ID] [bigint] NOT NULL,<BR> [BoardID] [int] NOT NULL,<BR> [Title] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,<BR> [Content] [nvarchar](max) COLLATE Chinese_PRC_CI_AS NOT NULL,<BR> [ReplyCount] [int] NOT NULL,<BR> [PageView] [int] NOT NULL,<BR> [StatusFlags] [int] NOT NULL,<BR> [CreateUserID] [bigint] NOT NULL,<BR> [CreateUserName] [varchar](40) COLLATE Chinese_PRC_CI_AS NOT NULL,<BR> [CreateTime] [datetime] NOT NULL,<BR> [CreateIP] [varchar](20) COLLATE Chinese_PRC_CI_AS NOT NULL,<BR> [UpdateIP] [varchar](20) COLLATE Chinese_PRC_CI_AS NULL,<BR> [LatestReplyTime] [datetime] NOT NULL,<BR> [LatestReplyUserID] [bigint] NULL,<BR> [LatestReplyUserName] [nvarchar](18) COLLATE Chinese_PRC_CI_AS NULL,<BR> [ResourceCode] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,<BR> [PollIDs] [varchar](200) COLLATE Chinese_PRC_CI_AS NULL) <BR>GO<BR>--------------------<BR>想对该表进行表分区,我计划的分区方案是根据版面来进行分区,例如版面id为1-100的在一个分区上,101-200的在一个分区上;这样分区就需要把BoardID放在聚集索引中,于是我在两列ID和BoardID上建了聚集索引。</P>
<P align=left>这样分区的原因有二,一可以提高帖子列表页的帖子列表的查询速度;二是在显示帖子详细页时我总是会传BoardID和PostID这样在查询的条件中我可以先写BoardID = @boardID AND ID = @postID希望这样可以提高帖子详细页数据查询的效率</P>
<P align=left> </P>
<P align=left>请各位指点,我这样做是否合适?有什么问题,有没有合适的方案?</P>
<P align=left> </P>
<P align=left>先谢过大家。</P></SPAN>
玉开
|
大侠五级
|
园豆:
8822
提问于:2008-05-20 17:16