数据表设计感想

需求:管理问题,并对问题进行分类,问题与类别存在多对多的关系。

方法1:新建一个AskType类别表,包含(类别ID)AskTypeID,(类别名称)AskTypeName,(问题ID)QuestionID,(问题名称)QuestionName.

再建一个Question问题表,包含(问题ID)QuestionID,(问题名称)QuestionName.

类别与问题存在多对多的关系。一个问题可以属于多个问题类别,一个类别可以包含多个问题.这些关系都在AskType表中体现.

方法2:新建一个AskType类别表,包含(类别ID)AskTypeID和(类别名称)AskTypeName.

再建一个Quesiton问题表,包含(问题ID)QuestionID,(问题名称)QuestionName.

再建一个Relation表,包含(关系ID)RelationID,(类别ID)AskTypeID,(问题ID)QuestionID.

类别与问题存在多对多的关系。一个问题可以属于多个问题类别,一个类别可以包含多个问题.这些关系都在Relation表中体现.

方法3:新建一个AskType类别表,包含(类别ID)AskTypeID和(类别名称)AskTypeName.

  再建一个Quesiton问题表,包含(问题ID)QuestionID,(问题名称)QuestionName,(类别ID)AskTypeID.

  类别与问题存在多对多的关系。一个问题可以属于多个问题类别,一个类别可以包含多个问题.

  这些关系都在Quesiton表中体现,Quesiton表中的AskTypeID字段可以存储多个类别ID,以字符串的形式保存,各个类别ID以,分隔。(如"1,2,3")

3个方法,都有哪些优点,哪些缺点?那个方法最佳?

转载于:https://www.cnblogs.com/lanchong/archive/2012/02/14/2350509.html

猜你喜欢

转载自blog.csdn.net/weixin_34162695/article/details/94705015