用PowerDesigner建立概念模型的问题:不能创建相同字段名的关键字段

Brave-LI 2015-07-29 04:21:55
用PowerDesigner建立概念模型的问题:不能创建相同字段名的关键字段 例如:建立表T1,T1包含有一个字段ID,并且把ID指为关键字段,建立表T1的时很顺利地完成。接着建立弟二个表T2,T2表也包含一个名字为ID的字段,当建立这个ID字段时就报错,错误信息是:This data item is already used in a primary identifier.Normalization rules prevent from reusing this data item in another entity 怎样解决这个问题啊?
...全文
2219 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
可以用的。但是先要设置一下。 我用的英文版 就用英文说下,依次点击Tools--->Model Options->Model Settings,在Model Settings中有Data Item组框,取消里面的Unique Code,勾选Allow Reuse。此时再进行PDM建模。 如果仍然不行,则在Tools--->Model Options->Model Settings里有Notation选项,在下拉菜单中选择E/R选项就可以了。
WorldMobile 2015-08-06
  • 打赏
  • 举报
回复
引用 楼主 Lucky_Kiss 的回复:
用PowerDesigner建立概念模型的问题:不能创建相同字段名的关键字段 例如:建立表T1,T1包含有一个字段ID,并且把ID指为关键字段,建立表T1的时很顺利地完成。接着建立弟二个表T2,T2表也包含一个名字为ID的字段,当建立这个ID字段时就报错,错误信息是:This data item is already used in a primary identifier.Normalization rules prevent from reusing this data item in another entity 怎样解决这个问题啊?
ID如果为主键的话,其它表里出现相同的ID,ER图认为是同一个,如果再键为主键是不允许的,建议不要重名,你可以在pdm里修改
PowerDesigner设计数据库使用步骤及规范 使用PowerDesigner可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。它可以制作多种数据模型,也能对团队设计模型进行控制。还可以与许多流行的软件开发工具,例如PowerBuilder、Delphi、VB等相配合使系统设计更优化并缩短开发时间。 并不是每个设计都需要用到PD,对于比较大型的项目,它是很好的,对于短平快类型的项目,例如时间要求一周左右的系统,没有必要使用,直接维护数据库即可,对于表的数量超过10个的系统,建议使用PD进行设计和交流。 创建概念数据模型(CDM) 1.1 创建CDM步骤 选择 文件建立新模型,弹出如图所示对话框,选择ConceptualDataModel模型(即概念数据模型),单击OK,即确认创建PowerDesigner设计数据库使用规范全文共15页,当前为第1页。双击资源浏览窗口中新创建的CDM 名称图标,打开CDM 模型属性窗口,进行相关属性信息设置。如下图: PowerDesigner设计数据库使用规范全文共15页,当前为第1页。 1.2 对象命名通用规范 以下三种规范属于基本规范,适用于本文所有数据库对象命名规范。 1、长度规范:凡是需要命名的对象其标识符均不能超过3个英文单词长度(30个字符),也即:Oracle中的表名、,函数名,过程名,触发器名,序列名,视图名的长度均不能超过3个英文单词长度(30个字符); 2、构成规范:数据库各种名称必须以字母开头,但严禁使用SYS开头;名称只能含有字母,数字和下划线"_"三类字符,"_"用于间隔名称中的各语义字;不要使用DUAL作表名; 3、大小写规范: 构成Oracle数据库中的各种名称(表明,,过程名,视图名等等)的所有字符,必须使用大写,也就是不能在脚本中,对任何名称添加双引号""来设定字符的大小写形式,只要不采用""限制,Oracle自动会将各名称转化成大写。 PowerDesigner设计数据库使用规范全文共15页,当前为第2页。 PowerDesigner设计数据库使用规范全文共15页,当前为第2页。 进行ER设计的准备工作 2.1 实体命名不相同检查 PowerDesigner 默认不能存在相同名称的实体属性,这也是考虑到可能产生的一些如主键外键等名称冲突问题,但当进行实际数据库设计时,可能会多次使用相同数据项(DataItem)便于理解各实体。为此需要对更改PowerDesigner 相关设置。软件默认DataItem不能重复使用,需要进行以下操作: 选择工具Model Options,在 Model Setting 设置目录中,将Data Item下的Unique Code取消选中即可,系统默认将Unique Code和Allow Reuse均选中。 PowerDesigner设计数据库使用规范全文共15页,当前为第3页。同时该设置均是面向特定模型的,即针对当前模型有效,若希望在其它模型中也有此命名设置,则需要重新进行设置。不过在Check Model 时,如果选择全部Check,则依旧会报DataItem 重名的错误信息,这时需要我们在人为检查确认数据项无误时,可以在选择不对DataItem 不检查,如下图示: PowerDesigner设计数据库使用规范全文共15页,当前为第3页。 PowerDesigner设计数据库使用规范全文共15页,当前为第4页。 PowerDesigner设计数据库使用规范全文共15页,当前为第4页。 定义实体 3.1 创建entity 3.1.1 创建entity步骤 1、在CDM的图形窗口中,单击工具选项版上的Entity工具,再单击图形窗口的空白处,在单击的位置就出现一个实体符号。点击Pointer工具或右击鼠标,释放Entity工具。如图所示: 2、双击刚创建的实体符号,打开下列图标窗口,在此窗口"General"标签中可以输入实体的名称、代码、描述等信息。 PowerDesigner设计数据库使用规范全文共15页,当前为第5页。 PowerDesigner设计数据库使用规范全文共15页,当前为第5页。 Name:是用来在模型中标识一个实体,一般用于模型在界面中的显示(这个可以通过更改选项设置进行改变)。在一个模型当中,实体的名字不能重复。 Code:在模型转化时一般作为对象的物理名称,比如把实体属性的Code转化为数据库中的列名,一般采取与Name一致。 Generate:默认是选择状态,如果取消,则在转化为其他模型时,会忽略这个实体。 3.1.2 entity命名规范 CDM中的实体等价于PDM中的表。 1、表的命名只能使用英文字母,数字和下划线。 2、命名以是名词的复数形式,如cit
浅谈数据库设计方法 本文主要对数据库设计理论内容进行全面分析,这是建立在软件开发经验基础上实施 的操作,可以根据不同角度来阐述数据库设计的方法,以及设计技巧,让更多的数据库 设计人员了解数据库设计相关知识,从而提高了数据库设计的稳定特性、可靠性、以及 扩展性。 标签:数据库;数据库设计方法;数据库理论 想要快速的制作出一个成功的管理系统,必须要拥有一定的业务,同时软件结构要完 整,二者的比例可以占1比1,大部分成功的软件都是由数据库和程序相互组成的,数据 库设计好坏起到了绝对性的作用。 1 设计前的准备工作 1.1 研究现有数据库设计环境 在我们设计数据库的时候,我们应该先观察每一名客户对数据库有那些需求,适当的 时间内去检查下数据库的运行情况,观察软件具体结构,给出合理的修复方案。系统在 运行的过程中需要经过反复的实验证明才能够保证运行没有任何问题,同样在了解了数 据库内部系统结构之后,可以建立一些有关系统的流程,我们需要根据业务流程来开发 新的系统。经过我们仔细研究我们发现一个比较重要的问题,在建立数据库时,需要建 立数据库模型和业务模型用来防止数据出现差错。 1.2 合理选择数据库建模工具 当前有很多业务流程比较复杂,很多管理人员都喜欢在数据库建立后追求一些利润上 的报酬,工作人员的自身业务是根据数据库发展情况来定制的。大部分企业在建立数据 库之前必须要建立数据库模型和业务模型,二者是有不同点的,当然这需要设计人员和 业务策划人员进行详细的测定,采用高端技术来实现最后业务目标。有合理的数据库建 模工具能够快速完成数据库设计,比如我们能够使用PowerDesigner9.5工具,采用这种 数据库建模工具能够快速展开数据库设计。 1.3 逻辑设计的重要性 目前CASE工具一直在不断的发展,我们采用逻辑设计能够更好的掌握特定数据库的设 计中各个元素,同时可以验证用户需求正确性,可以快速验证数据流和工作流的合理性 ,这样能够确保业务模型和数据模型完全处于一个水平线上,为以后无力设计的稳定打 下坚实的基础。 2 表设计 2.1 表的命名 从项目一建立开始,我们就已经明白了复数和单数在数据使用中的区别,给这些内容 给予定义规则。例如,如果代表的是一个单词,单词别名可以取4个字母,如果表明的是 两个单词,那么就可以取两个单词的前面两个字母组成4个字母的长别名,其余以此类推 。 2.2 合理建立表的关联关系 想要维护数据的完整性,尽量避免出现孤立记录的产生,从理论意义上来说,完整的 关联能够影响到数据访问的最后效率。对于一般数据查询来说,我们需要建立严格意义 上的关联,如果数据量比较大,并发性要求高,那么可以采用程序代码来完成。 3 字设计 3.1 规范字命名 字在数据库设计中属于公共资源,所以这种字一般具有比较强的开放特征,可以 让更多的人能够积极参与,理解其中的含义,另外我们需要采用一整套严格的设计规则 。例如:键是数字类型,可以用N作为后缀:键是字符类型则叫一以采用C后缀:给mone y类型字增加一个M后缀:对日期字采用D前缀等形式命名。 3.2 采用指示符标识 我们可以去设计一个知识字来表示记录活跃状态。这样可以快速的进行过滤。最后 消除新用户在采集数据时面临的一些问题,例如,我们可以采用不用记录进行过滤,防 止误删一些数据内容。另外对于时效性数据增加日期字,对该字,我们需要进行详 细的查找,清除掉旧数据的是比较有效的。 4 索引创建 4.1 索引使用原则 4.2 索引建立技巧 一般我们会使用聚合索引的机会要比其他索引使用机会多很多,并且主键的速度也要 快很多,我们采用聚合索引的时间,搜索时间会按照数据库内容分析情况进行对比研 究,这个对比研究可以规划出相对的百分比,呈现一个递减的趋势,因此,时间刽由于 分秒问题导致查询速度出现减慢。 5 结束语 经过上述的分析,我们发现软件开发是一个漫长的过程,上述内容只是软件数据库设 计的部分设计,当数据库一旦有了相对比较庞大的系统后,需要做出进一步的研究。 参考文献: [1]常玉慧.浅谈数据库主键设计的原则[J].电脑知识与技术,2011,22(36):12- 16. [2]熊慧芳.数据库主键的设计方法探讨[J].无线互联科技, 2013,32(07):54- 57. [3]张立伟,唐伟.浅谈ABAP程序的优化[J].科技致富向导, 2012,31(11):26- 29. [4]刘奕.关系数据库设计中主键的定义分析[J].辽宁高职学报, 2014,12(06):32-34. [5]严金贵,罗军,周娜娜.基于层次主键模型的多维数据概念模型[J].计算机工程, 2012,33(23):56-59. ----------------------- 浅谈数据库设计方法全文共3页

1,079

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧