唯一约束
唯一约束与创建唯一索引基本上是一回事,因为在创建唯一约束的时候,系统会创建对应的一个唯一索引,通过唯一索引来实现约束。不过唯一约束更直观的表达了对应列的唯一性,使得对应索引的目的更加清晰,所以一般建议创建唯一约束而不是只创建唯一索引。
在PD中创建唯一约束的操作,以教室表来说,RoomID是主键,必然是唯一的,RoomName如果我们也要去必须是唯一的,那么具体操作如下:
在PD的模型设计面板中,双击“教室”表,打开属性窗口,切换到"”Keys”选项卡,可以看到里面有一行数据PK_ClassRoom,这是主键约束。添加一行数据,命名为UQ_RoomName,不能将右边的“P”列选上,然后单击工具栏的“属性”按钮,弹出UQ_RoomName的属性窗口,切换到列选项卡,单击增加列按钮,选择将RoomName列添加到其中,然后单击确定即可完成唯一约束的添加。
这样系统就会自动创建唯一约束。
CHECK约束
CHECK分为列约束和表约束,列约束是只对表中的某一个列进行的约束,可以在列的属性中进行设置,而表约束是对多个列进行的约束,需要在表的属性中进行设置(其实列约束也可以在表约束中设置)。
1.标准CHECK约束
对于一些常用的CHECK约束,可以直接通过设置界面来完成。以班级表为例,ClassName每个学校有自己的命名规则,假设这里规定ClassName必须以2开头,那么需要在ClassName列上定义CHECK约束,使得其满足命名规范。具体操作是在PD中双击Class表,打开Class的属性窗口,切换到列选项卡,选择ClassName列,单击工具栏的“属性”按钮,弹出ClassName的属性窗口,切换到StandardChecks选项卡如图:
在这个选项卡可以定义属性的标准检查约束,窗口中每项的参数的含义,如下:
参数 说明
Minimum 属性可接受的最小数
Maximum 属性可接受的最大数
Default 属性不赋值时,系统提供的默认值
Unit 单位,如公里、吨、元
Format 属性的数据显示格式
Lowercase 属性的赋值全部变为小写字母
Uppercase 属性的赋值全部变为大写字母
Cannot modify 该属性一旦赋值不能再修改
List Of Values 属性赋值列表,除列表中的值,不能有其他的值
Label 属性列表值的标签
2.直接编写SQL语句的CHECK约束
在前面弹出ClassName属性窗口中,单击左下角的“More”按钮,系统将弹出更多的选项卡,切换到“Additional Checks”选项卡,可以设置约束名和具体的约束内容,如图所示:
表级的CHECK约束与列级的CHECK约束设置类似,单击表属性窗口左下角的“More”按钮,切换到Check选项卡,设置CHECK约束的命名和SQL语句内容。
3.使用Rule创建约束
同样以班级名必须以2开头为例,通过Rule创建CHECK约束。首先需要创建一个Rule,双击Class表,打开表的属性窗口,切换到Rules选项卡,单击“Create a Object”按钮,系统将打开一个业务规则属性窗口,修改规则名,并将规则的类型修改为Constraint,如图所示:
然后切换到Expression选项卡,设置规则的内容为“ClassName LIKE '2%'”,单击确定按钮即可完成Rule的设置。切换到表属性的Check选项卡,默认约束内容中的“%RULES%”就是用来表示Rule中设置的内容,如果我们还有一些其他的CHECK约束内容,不希望在Rule中设置,而是在Check选项卡中设置,那么只需要删除%RULES%将CHECK约束内容添加进去,也可以保留%RULES%,然后在与%RULES%之间添加一个and即可。比如规定ClassID必须小于10000,那么我们可以将Check内容设置如下:
生成的脚本如下:
create table Class (
ClassID int not null,
ClassName varchar(20) not null,
constraint PK_CLASS primary key nonclustered (ClassID),
constraint CKT_CLASS check (ClassID<10000),
constraint ClassNameRule check (ClassName LIKE '2%')
)
go
可以看到,根据Rule生成的CHECK约束与在Check选项卡中设置的约束将分别创建一个约束,相互并不影响。
默认约束
默认约束是用户在没有输入值的情况下,系统给出默认的值。最常用的是CreateTime字段,设置默认值为getdate(),在用户创建一行数据时记录下创建时间。例如对于选课表,需要记录下选课的时间,则可以设置ApplyTime的默认值为getdate()函数。
设置默认值约束的操作如下:双击选课表,打开表属性窗口,选择ApplyTime字段,单击工具栏的属性按钮,打开列的属性窗口,切换到Standard Checks选项卡,在Default下拉列表框中选择getdate()即可。
至此我们所有的约束在PD中的设置都介绍完了,下一篇将介绍视图、存储过程等数据库对象。
from: http://www.cnblogs.com/studyzy/archive/2009/12/17/1626650.html
分享到:
相关推荐
该资源讲述了如何使用pd在物理模型中设置唯一约束
CDM是一组严格定义的模型...2)数据操作表达为实体中的记录的插入、删除、修改、查询等操作; 3)完整性约束表达为数据的自身完整性约束(如数据类型、检查、规则等)和数据间的参照完整性约束(如联系、继承联系等);
PowerDesigner创建属性的标准检查约束.pdf 学习资料 复习资料 教学资源
以下是用PowerDesigner做的E-R实例的: 一、概念数据模型概述 数据模型是现实世界中数据特征的抽象。数据模型应该满足三个方面的要求: 1)能够比较真实地模拟现实世界 2)容易为人所理解 3)便于计算机实现 概念...
PowerDesigner中概念数据模型 CDM的基本概念。 PowerDesigner概念数据模型以及实体、属性创建。 介绍属性的标准检查约束、如何定义属性的附加检查。 介绍如何定义实体的主、次标识符。 介绍数据项、新增数据项、数据...
使用PowerDesigner生成能够为数据库 的表中添加记录的测试数据。 5. 实验步骤、结果及分析 1) 对物业管理系统建立物理数据模型(PDM) 1) 业务分析,得到实体及其属性如下: 1) 小区基本信息(小区编号,名称,小区...
第1页: 概念数据模型概述 第2页: PowerDesigner概念数据模型 第3页: 属性的标准检查约束 第4页: 如何定义实体的主、次标识符 第5页: 数据项、新增数据项、数据项的唯一性... 第6页: 联系的定义及使用 【IT168...
方便直观地浏览PowerDesigner数据库字典(PDM文件)的软件开发辅助工具。 ①概述:PDMBrowser读取所选的整个目录(不含子目录)下所有PDM文件,以左侧为表列表、右侧为所选表的字段描述的方式显示于界面; ②...
数据库设计的⼯作包括:确定数据库中包含哪些表、每个表包含哪些字段、所有表之间的怎么关联的(主、外键约束) 数据库设计的⼯作流程可以总结为:确定⽤户场景(⽤例)、从⽤户场景中提取系统实体、分析实体之间的...
物理设计 对上一步的概念设计在PowerDesigner里进行实际的设计 实施阶段 把PowerDesigner里设计好的表产生SQL,然后在SqlServer里运行,产生各种 实体的表。 运行和维护 二.系统数据库的构成 1.基础类数据 设计...
从数据库原理的讲解,到MySQL的安装、配置、标准SQL的DML、DDL、DCL、高级查询、数据库设计、表约束、PowerDesigner12.5的使用、三大范式、索引、视图、存储过程和函数、触发器,MySQL权限原理及管理、数据的备份与...
图1-4 图1-5 在这个选项卡可以定义属性的标准检查约束,窗口中每项的参数的含义,如表2所示 。 表2 对话框中参数的含义 "参数 "说明 " "Minimum "属性可接受的最小数值 " "Maximum "属性可接受的最大数值 " ...
表结构设计器(EZDML) V1.42 (免费软件) 这是一个数据库建表的小软件,可快速的进行数据库表结构设计,建立数据模型。...新版本修改了菜单样式,字段列表中增加约束的设置,支持导出简单的EXCEL文件。
表结构设计器(EZDML) V1.42 (免费软件) 这是一个数据库建表的小软件,可快速的进行数据库表结构设计,建立数据模型。...新版本修改了菜单样式,字段列表中增加约束的设置,改进了导出EXCEL的样式效果。
表结构设计器(EZDML) V1.50 (免费软件) 这是一个数据库建表的小软件,可快速的进行数据库表结构设计,建立数据模型。...新版本修改了菜单样式,字段列表中增加约束的设置,改进了导出EXCEL的样式效果,解决一些BUG。
在物理模型中根据需要添加必要的约束、视图、触发 " "器和存储过程等数据库对象,最后生成创建数据库的脚本,提出物理设计的文档。要 " "求学生提交的报告包含: " "需求说明书 " "概念数据模型(E-R数据模型) " ...
类似大家常用的数据库建模工具如PowerDesigner、ERWIN、ER-Studio和Rational-Rose等的超级精简版。2018年1月18日 V2.16在鼠标位置创建表对象;复制图片默认为PNG格式(按住SHIFT键则为WMF),导出BMP、PNG和JPG格式...
将一个实体的一个属性(或多个属性)定义为引用其他实体的主键或惟一约束属性,则引用实体中的这个属性(或多个属性)就称为外键。被引用的实体称为主键约束(或惟一约束)实体;引用实体称为外键约束实体。 数据库...
2.通过PowerDesigner 做出实体间的主从关系,主从的数据关系及约束关系 3.在CDM模型中对字段进行解释 贷款申请 表模型设计 聚合表Package 【说明】说明聚合原因,聚合的依赖关系及层次。 xxx Package 【说明】...
【完整课程列表】 第01章 数据概述库(共78页) 第02章 数据模型与数据库结构(共86页) 第03章 关系数据库(共98页) 第04章 SQL语言基础及数据定义功能(共38页) ...第21章 数据库设计工具 PowerDesigner(共25页)