Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7932151
  • 博文数量: 124
  • 博客积分: 2880
  • 博客等级: 少校
  • 技术积分: 873
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-16 17:08
文章分类

全部博文(124)

文章存档

2011年(28)

2010年(60)

2009年(36)

我的朋友

分类: 数据库开发技术

2010-04-07 19:44:51

 
查看文章
 
PowerDesigner的创建使用及如何设置显示注释信息
2007年07月14日 星期六 23:10
我用的PowerDesigner9.5的汉化版。创建一个新建模数据库。可以双击我桌面的
这个图标,进去之后就会看到这个界面

可以点击文件-->新建-->Physical Data Model 就如下图所示:再点确定。

,接着跳出一个新建成物理数据模型,DBMS可以选择Microsoft SQL Server 2000,其它选项默认。再点确定即可。


再选中这个
,F2键重新命名,如Win2050,就如下图所示:

现在就可以设置一些选项。选中工具栏上的数据库à编辑当前DBMS(E) 如下图所示:

点击确定,出现下图所示:


先设置表名如果有注释的话,也自动生成注释信息。

Microsoft SQL Server 2000-->Script-->Objects-->Table-->TableComment,并且在它右边中的值输入以下内容:
EXECUTE sp_addextendedproperty N'MS_Description', N'%COMMENT%', N'user', N'%OWNER%', N'table', N'%TABLE%', NULL, NULL

如下图所示:

接着设置列名如果有注释的话,也自动生成注释信息。
Microsoft SQL Server 2000-->Script-->Objects-->Column-->ColumnComment,
并且在它右边中的值输入如下内容:

EXECUTE sp_addextendedproperty N'MS_Description', N'%COMMENT%', N'user', N'%OWNER%', N'table', N'%TABLE%', N'column', N'%COLUMN%'

如下图所示:

大家看看这些代码,立刻就明白是怎么回事了。%COMMENT%之类的就是相当于替换变量,PowerDesigner在生成脚本的时候自动替换设计模型中替换变量的值。


接着设置表中的
NameCode的情况:
(
在用PowerDesigner的时候,当你输入Name的时候Code是会自动帮你按照Name的内容填上的.
这个功能虽然好用
,但是我需要在Name这一项加上一个中文的注释,这个时候怎么办呢?

下面两个例子,相信对你相当有用.

Examples

· Script 1:
.set_value(_First, true, new)
.foreach_part(%Name%, "'#'")
.if (%_First%)
.delete(%CurrentPart%)
.set_value(_First, false, update)
.else
%CurrentPart%
.endif
.next
这个例子是把
Name内容的#号后边的内容当作Code.
:Name列输入    用户名#user_name 则在Code列自动会变成   user_name

· Script 2:
.set_value(_First, true, new)
.foreach_part(%Name%, "'#'")
.if (%_First%)
%CurrentPart%
.set_value(_First, false, update)
.endif
.next

这个例子是把Name内容的#号前边的内容当作Code.
:Name列输入    user_name#用户名 则在Code列自动会变成   user_name
)

设置的话,可以在工具栏中的工具(T)-->模型选项(T)-->再点确定。就出现下图:


接着再选中命名惯例,就如下图所示:

,选中Name To Code选项卡下输入Script 1中代码,并选中允许名称/代码惯例。就会如图所示:

这个例子是把Name内容的#号后边的内容当作Code.
:Name列输入 用户名#user_name 则在Code列自动会变成   user_name
(
注:用这个script的时候,必须先设置,才会转换的。
如果你已经设计好了,再设置是不会对之前的东西改变的。
)

接着可以设置创建表的规则:如果每个表格都有相同的字段,可以如下修改:
选中
Microsoft SQL Server 2000-->Script-->Objects-->Table-->Create,在右边中的值输入如下代码:
/* tablename: %TNAME% */
create table [%QUALIFIER%]%TABLE% (
   Remark               text                 null,
   %TABLDEFN%)
[%OPTIONS%]
就如以下图所示:


其中的 Remark 列会在生成SQL脚本的时候自动的插入每个表格中,其中的%TNAME% 变量是给每个表格的SQL添加一个该表的Name值注释。

要修改字段生成规则, 要给每个字段都添加一个注释的话,可以在
Microsoft SQL Server 2000-->Script-->Objects-->Column-->Add
在右边的值输入如下代码:

%20:COLUMN% [%COMPUTE%?AS (%COMPUTE%):%20:DATATYPE% [%IDENTITY%?%IDENTITY%:[%NULL%][%NOTNULL%]][ default %DEFAULT%]
[[constraint %CONSTNAME%] check (%CONSTRAINT%)]]/*%COLNNAME%*/

如下图所示:


其中的%COLNNAME%就是列的Name值(可以是中文)
现在就可以看我们所设置的成果了。

可以创建一个表,单击,在空白位置,就会出现一个表。如下图所示:


接着点击,然后双击这个表的图形,就会跳出表结构给我们定义:如下图所示:

现在就可以对它的常规进行设置,名称可以写 测试 ,代码可以写 Test ,注释可以写测试中的表。所有者可以写dbo 创建 所有者可以点击,就会跳出如下窗口:

然后在Name列中输入dbo 就会如下图所示,再点击确定即可。

在所有者下选择dbo ,就如下图所示:


,在选中列的选项卡,就如下图所示:

Name的空行中点击,就可以创建新行,可以在第一行中的Name列输入:自动编号#ID
它的
Code 列就会自动变成 ID,因为我们之前有设置
:Name列输入 用户名#user_name 则在Code列自动会变成   user_name
然后在
DataType,设置它的类型为Int,然后选中P列,把它打勾。
在第二行中的
Name列输入:姓名#Name 列就会自动变成 Name,DataType 类型Varchar(50)
就如下图所示:


接下来设置列中的注释,选中自动编号#ID这一行,然后双击。就会跳出如下窗口:

然后可以在注释中输入如主键编号,

,其它默认,点确定即可。其它列设置也可以如自动编号#ID创建的方法一样。
再点击选项卡中预览,即可看到我们之前所设置的脚本就生效了。如下图所示:

阅读(6257) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~