`
backbase
  • 浏览: 89384 次
  • 性别: Icon_minigender_1
  • 来自: 虾汤水库
社区版块
存档分类
最新评论

从同事讨论中所想写的

    博客分类:
  • db
阅读更多
[size=x-small] 从一个同事和另一个同事讨论中的总结:现在假设有个这样的需

求 有用户表User,用户组表UserGroup,还有就是角色表Role(或者说权限表)那个同事的设计

是这样的一个用户可以在多个用户组中,一个用户组对应一个角色,这样就导致了一个用户组中

的所有用户都是只拥有同一个角色,而用户没有直接和角色联系起来。这样做完后,添加用户的

时候,给用户默认指定一个用户组,在添加用户组的时候,默认给用户组选择一个权限,而权限

表暂时只有三种就是如 查看、配置、管理这三种。看上去貌似满足需求。但和同事一讨论,就

觉得不对了。为什么不对呢,需求理解错了。需求要求用户和角色直接有联系,用户组不直接和

角色联系。一个用户组中可以有多个不同角色的用户,不都是拥有同一个角色的用户。用户组和

角色没关系,这样用户和角色就构成多对多的关系,用一个中间表来来存放用户和角色这两个表

的多对多的关系。大概就是这样了,最后总结就是,在做数据库的设计是先多想想看是否合理

然后多参考网上前辈们的是怎么设计的。
[/size]
分享到:
评论

相关推荐

    自己动手写操作系统(含源代码).part2

     本书以“动手写”为指导思想,只要是跟“动手写”操作系统有关的知识,都作为介绍对象加以讨论,所以,从开发环境的搭建,到保护模式,再到IBMPC中有关芯片的知识,最后到操作系统本身的设计实现,都能在本文中...

    自己动手写操作系统(含源代码).part1

     本书以“动手写”为指导思想,只要是跟“动手写”操作系统有关的知识,都作为介绍对象加以讨论,所以,从开发环境的搭建,到保护模式,再到IBMPC中有关芯片的知识,最后到操作系统本身的设计实现,都能在本文中...

    C# Lambda快速深度拷贝

    今天上班在班车上和一个同事讨论有关C#拷贝效率的问题,聊到了多种深度拷贝方法,其中就提到了一种Lambda表达式拷贝的方法,这位同事说这种深度拷贝快是快但是如果对象里面再嵌入对象就不能深度拷贝了,只进行浅拷贝...

    Protel原理图、PCB转Cadence环境详谈

    关于PROTEL转ALLEGRO的方法,网上讨论很热闹,但归根结底,就两篇文档,有一篇还是从米国论坛中翻译过来的,文档都是基于ALLEGRO熟手的基础上写的,所以新手要看懂并做成功,还是要花很多功夫,而且在实际操作中发现...

    程序员该读的十本好书之《重构改善既有代码的设计》

    本书介绍了其他人的许多研究成果,最后数章就是由他们之中的几位所客串写就。Bill Opdyk。 在第13章记述他将重构技术应用r商业开发过程中遇到的一些问题。Don Koberts和John Brant在第14章展望重构技术的未来一自动...

    wicket开发详解

    开发详解想写一份这样的Wicket 文档,源于2005 年中,那是用Wicket1.0 完成了第一个项目以 后的想法,觉得如此好的一个Web 框架,应该让更多的开发人员了解和使用它。因此在 05 年9 月份的时候开始了这份文档的初稿...

    [导读]完美软件-对软件测试的各种幻想

    Weinberg针对软件测试所写的新作。他在软件项目的管理、设计、开发和测试方面都具有极其丰富的经验,对于与软件开发有关人员的心理尤其有深入的研究。在《完美软件:对软件测试的各种幻想(中英文对照)》中,他重点...

    农村环境中的计算机支持:计算机辅助和手写评估报告的比较

    农村环境中的计算机支持:计算机辅助和手写评估报告的比较学校心理学第 23 卷,1986 年 7 月农村环境中的计算机支持:评估报告对计算机辅助和手写的比较 FRANK J. NICASSIO, KEVIN J. MOORE 和儿童发展计划的工作...

    fsharp-a-beginners-guide:该存储库是我为同事编写的一系列小课程,目的是使他们对F#感兴趣,并有可能在未来几个月内在工作中使用它

    他讲述了自己从这本书中学到的知识,并在最近的对此进行了讨论。 我完全喜欢这个演讲,但是当考虑使用其中一个被引用的库,我发现这一切令人望而生畏。 尽管确实提供了一组非常有趣的,涉及各个主题,但该文档绝对...

    代码大全中文版

    通用的概念 无论你用的是 Pascal、C、C++、Ada、Basic、Fotran 还是 COBOL,都可以从本书所论述的概念、方法和技巧中获得教益。  丰富而典型性的程序示例 书中含有大约 500 多个正反两方面的程序示例。之...

    Java通讯录管理系统课程设计报告.docx

    计划与进度安排: 5月4日—5月10日 写需求分析,开会讨论需要实验的功能以及如何实现。 5月11日—5月16日 概要设计,分组把得到的系统扩展用例图转换为和。 5月17日—5月22日 详细设计,详细设计每个模块实现算法,...

    F 学校网络办公系统 v2.2.3

    2、日程安排:用户写自己的工作日程安排,具有提醒功能; 3、待办提醒:根据日程安排中提醒日期设定自动显示在本栏; 4、通讯录(个人和单位):用户可填写同事好友的通讯方式; 5、文件柜:文件传输系统,可轻松...

    学校网络办公系统 v2.2.3

    2、日程安排:用户写自己的工作日程安排,具有提醒功能; 3、待办提醒:根据日程安排中提醒日期设定自动显示在本栏; 4、通讯录(个人和单位):用户可填写同事好友的通讯方式; 5、文件柜:文件传输系统,可轻松...

    F 学校网络办公系统 v2.2.3.rar

    模块一:我的办公桌 (主要是对用户个人事务使用而设计) 1、短信箱:此系统用户之间...1、讨论区:讨论相关问题;* 2、网络会议:开网上会议;* 3、网络硬盘:提供文件的保存; 4、网络调查:通过网络开展调查;*

    Java通讯录管理系统课程设计报告(1).docx

    计划与进度安排: 5月4日—5月10日 写需求分析,开会讨论需要实验的功能以及如何实现。 5月11日—5月16日 概要设计,分组把得到的系统扩展用例图转换为和。 5月17日—5月22日 详细设计,详细设计每个模块实现算法,...

    STL源码剖析

    标准模板库设计人Stepanov早期从事教育工作,1970年代研究泛型程序设计,那时他与其同事一起在GE公司开发出一个新的程序语言——Tecton。 1983年,Stepanov先生转至Polytechnic大学教书,继续研究泛型程序设计,同时...

    致面向对象技术初学者的一封公开信

    这些同样的问题也在困扰着我的一位新同事,在一家饭店里,我花了整整一个晚上和他讨论这些问题。结果第二天,他的同事又来问这些问题,并建议把我们的谈话内容记录下来,这样他可以拿去给他的同事看。考虑到还有很多...

    bem-css-methodology-complete-guide:#b_ BEM CSS 方法论

    我从 2008 年 Kharisov 的第一份报告中研究了 BEM,在我的公司实施了它,踩了一堆耙子,咨询了其他公司的同事,与 Yandex 团队和 Kharisov 本人谈了很多,我想我明白了本质,我可以清楚地描述它。

    QA要不要追究BUG发生的原因

    追究QA要不要追究BUG发生的原因软件测试这篇文章是有感而发,因为和几个同事在这个问题上达不成一致的意见,所以写出来自己的观点,希望能引起大家的思考和讨论。软件测试到底要不要追究BUG发生的原因呢?这个问题的...

Global site tag (gtag.js) - Google Analytics