安装完这2个软件了,接着就开始使用吧,还是和以前一样,先提出需求,再做实例,因为我们之所以使用它们,肯定是因为它们能巧妙的解决某种问题,不然我们干嘛花那么多时间和硬盘空间安装它们.

好,我们现在的需求是:希望当接到一个新的工程项目时,程序员只需要根据项目需求,设计出数据库的结构(表,表的字段,表间关系),之后只要按一个按键,就能立刻得到基于该数据库的所有分层架构代码文件.也就是说,我们希望能在不敲一行代码的情况下获取所有我们想要的代码!而这就是这2个软件能做到的事情,也是我们安装它们的目的.

好了,角色已经介绍完了,接着看看它们是如何演绎这场精彩的演出的吧:

首先我们需要创建一个测试数据库,为了简单,我们在这个数据库中只创建一个Student和一个Major.其表结构和关系如下所示.

看看怎样用PowerDesigner快速的创建出这个数据库吧.

1.现在开始使用PowerDesigner创建数据库,首先运行程序,进入主界面:

2.File—New Model—Physical Data Model—Physical Diagram—Model name 设置为test,DBMS属性设置为Microsoft SQL Server 2005:

3.首先用表格工具创建一个表格模板:

4.双击表格模板,设置属性,我们首先设置Major表:

5.设置好表名,点击Columns标签,设置字段属性,设置如图所示:

6.因为MajorID字段我们要设置为自动增长,所以要设置它的高级属性,选择MajorID字段,点击属性按钮,在General面板中勾选上Identity复选框:

7.确定后我们再创建一个Student表,字段设置如图所示:

8.接着是为Student创建一个MajorID外键,使用PowerDesigner可以很轻松的完成这个工作,选择关系设置工具,在Student表上按住左键不放,拖拽至Major表,便可为Student表添加一个MajorID的外键:

9.哈哈,现在测试表已经设置好了,接着设置一下我们要生成的数据库吧,这些表都将被创建到该数据库中,我们在设计面板空白处右键—Properties,在弹出的属性设置对话框设置如下:

10好了,在此我们对新数据库的设置已经完成,但是在SQL中还是空空如也啊,我们要怎么把这边设计好的结构移植到SQLServer 2005中呢?执行操作:Database—Generate Database,设置好存储过程导出目录和文件名,点击确定即可:

11.到你的导出目录,就可以看见导出的数据库创建存储过程了,打开SQL,执行一下,你就会看到数据库被神奇的创建好了:

12.好了,数据库的准备工作做好了,下一篇我们就将使用该数据库结合CodeSmith自动批量生成代码啦~

上述实践中生成的源代码:

SQL.sql

/*==============================================================*/
/* Database name: PD_test */
/* DBMS name: Microsoft SQL Server 2005 */
/* Created on: 2010/6/13 星期日 17:27:17 */
/*==============================================================*/ drop database PD_test
go /*==============================================================*/
/* Database: PD_test */
/*==============================================================*/
create database PD_test
go use PD_test
go /*==============================================================*/
/* Table: Major */
/*==============================================================*/
create table Major (
MajorID int identity,
Name nvarchar(20) not null,
Remark nvarchar(Max) null,
constraint PK_MAJOR primary key (MajorID)
)
go /*==============================================================*/
/* Table: Student */
/*==============================================================*/
create table Student (
StudentID nvarchar(20) not null,
MajorID int null,
Name nvarchar(20) not null,
Sex bit not null,
Age int null,
Remark nvarchar(Max) null,
constraint PK_STUDENT primary key (StudentID)
)
go alter table Student
add constraint FK_STUDENT_REFERENCE_MAJOR foreign key (MajorID)
references Major (MajorID)
go

PowerDesigner使用教程|使用方法的更多相关文章

  1. PowerDesigner使用教程【转】

    PowerDesigner使用教程 —— 概念数据模型   一.概念数据模型概述    概念数据模型也称信息模型,它以实体-联系(Entity-RelationShip,简称E-R)理论为基础,并对这 ...

  2. PowerDesigner使用教程(二)

    在PowerDesigner使用教程(一)中已经介绍了基本用法,下面介绍一些使用技巧. 1.  生成sql脚本 Database→Generate Database 选择要输出的文件路径,即文件存储路 ...

  3. Swiper教程 —— 使用方法

    Swiper使用方法 1.首先加载插件,需要用到的文件有swiper.min.js和swiper.min.css文件. <!DOCTYPE html> <html> <h ...

  4. PowerDesigner 12.5破解方法

    PowerDesigner 12.5破解方法 创建于 2017-05-07 22:18:04   一.下载   1 . PowerDesigner 12.5 官方下载地址  http://downlo ...

  5. PowerDesigner 使用教程(很具体,很实用)

    原文地址为:PowerDesigner 使用教程(很具体,很实用) 1.PowerDesigner 使用教程 从今日开始,每天一部分内容,在每个工作日,争取让大家天天都有的看,每天内容不会太多. 有错 ...

  6. Java-Runoob-高级教程-实例-方法:15. Java 实例 – 重载(overloading)方法中使用 Varargs

    ylbtech-Java-Runoob-高级教程-实例-方法:15. Java 实例 – 重载(overloading)方法中使用 Varargs 1.返回顶部 1. Java 实例 - 重载(ove ...

  7. Java-Runoob-高级教程-实例-方法:14. Java 实例 – Varargs 可变参数使用

    ylbtech-Java-Runoob-高级教程-实例-方法:14. Java 实例 – Varargs 可变参数使用 1.返回顶部 1. Java 实例 - Varargs 可变参数使用  Java ...

  8. Java-Runoob-高级教程-实例-方法:13. Java 实例 – for 和 foreach循环使用

    ylbtech-Java-Runoob-高级教程-实例-方法:13. Java 实例 – for 和 foreach循环使用 1.返回顶部 1. Java 实例 - for 和 foreach循环使用 ...

  9. Java-Runoob-高级教程-实例-方法:12. Java 实例 – Enum(枚举)构造函数及方法的使用-um

    ylbtech-Java-Runoob-高级教程-实例-方法:12. Java 实例 – Enum(枚举)构造函数及方法的使用 1.返回顶部 1. Java 实例 - Enum(枚举)构造函数及方法的 ...

随机推荐

  1. BZOJ 3601: 一个人的数论

    题目链接:www.lydsy.com/JudgeOnline/problem.php?id=3601 题意: 思路: 因此可以用高斯消元得到ai. const int mod=1000000007; ...

  2. Cheatsheet: 2013 09.10 ~ 09.21

    .NET Lucene.Net – Custom Synonym Analyzer Using FiddlerCore to Capture Streaming Audio Immutable col ...

  3. Java_JDK_TreeMap

    (一)TreeMap TreeMap使用的是红黑树来实现的,所以重点是红黑树的插入和删除. 红黑树的3个特性: 根节点和所有外部节点的颜色都是黑色的: 从根节点到外部节点的途中没有连续两个节点的颜色是 ...

  4. Margin and Padding in Windows Forms Controls

    https://msdn.microsoft.com/en-us/library/ms229627.aspx Margin and Padding Precise placement of contr ...

  5. Creating Excel File in Oracle Forms

    Below is the example to create an excel file in Oracle Forms.Pass the Sql query string to the below ...

  6. 关于MySQL数据库如何按时间查询

    这里做了几个测试 select * from simingpai where TIMESTAMP(createTime) >= '2015-9-6'; select * from simingp ...

  7. 程序间数据共享与传递:EXPORT/IMPORT、SAP/ABAP Memory

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  8. DOM解析XML练习

    首先以XML文件存储数据,格式如下(作为数据库) exam.xml <?xml version="1.0" encoding="UTF-8" standa ...

  9. PL/SQL 听课笔记

    PL/SQL: 知识回顾: SQL:  结构化查询语言: T-SQL:  microsoft sql语言: PL/SQL: Oracle sql语言: 变量命名规则: 1.首字母必须是字母,可以包含字 ...

  10. iOS - OC NSSet 集合

    前言 NSSet:集合 @interface NSSet<__covariant ObjectType> : NSObject <NSCopying, NSMutableCopyin ...