powerdesigner问题

1.Table code maximum length或者
Column code maximum length这是因为DBMS设置里面的表的code或者字段的code最大值设置过小,而自己设计的表字段code和表code又很长。

点击Database -> Edit Current DBMS
在Script->Objects->
下面:
Table-Maxlen和
Column-Maxlen两个值改大。

2.为生成的sql语句设置字符集
Database -> Edit Current DBMS->Script->Object->Table->Options

[img]http://dl2.iteye.com/upload/attachment/0087/3726/98b61052-0bdd-3f3c-9760-8e98bc3d85ef.jpg[/img]


改成

type = %s : list = BDB | HEAP | ISAM | InnoDB | MERGE | MRG_MYISAM | MYISAM, default = InnoDB
auto_increment = %d
avg_row_length = %d
checksum = %d : list = 0 | 1, default = 0
min_rows = %d
max_rows = %d
pack_keys = %d : list = 0 | 1 | default, default = default
password = %s
delay_key_write = %d : list = 0 | 1, default = 0
row_format = %s : list = default | dynamic | static | compressed, default = default
raid_type = %d : list = 1 | striped | raid0
raid_chunks = %d
raid_chunksize = %d
union = %s
insert_method = %s: list = no | first | last, default = no
data directory = %s
index directory = %s
DEFAULT CHARACTER SET = %s : list = utf8 | gbk, default = utf8
COLLATE = %s : list = utf8_bin | utf8_general_ci | gbk_bin | gbk_chinese_ci, default = utf8_general_ci

双击我们设置的某张表
在Physical Options选项卡
把你要加入的Options加入到右边

如果要一次性为所有表都启用Physical Options选项,

Database -> Default Physical Options,

[img]http://dl.iteye.com/upload/attachment/584410/3b0e9f1c-205e-3d3d-b167-cff81f3d7bcf.jpg[/img]

3.Incomplete join Reference FK_xxxx
要设置权限的类型,默认是只要是主键,就给他们建立关系,改成NONE
然后把不需要的关联字段删了

[img]http://dl.iteye.com/upload/attachment/584611/c2d60480-44b2-3d92-bf6a-6133b94950b4.jpg[/img]


4.想删除外键,但是不删除列的话
菜单
Tools->Model Options->Model Settings->Reference

Auto-migrate columns前面的勾去掉


5.设置所有主键为自增长
Tools->Execute Commands->Edit/Run Script
拷贝内容

''''*****************************************************************************
''''文件:SetIdentity.vbs
''''版本:1.0
''''版权:floodzhu (floodzhu@hotmail.com),2004.12.31
''''功能:遍历物理模型中的所有表,把是主键但不是外键的字段设置为Identity,适用于
'''' 物理模型为MS Sql Server的类型。
''''用法:打开物理模型,运行本脚本(Ctrl+Shift+X)
''''备注:我有两个习惯,一个是把所有表的主键都定义为自增长的int类型,另一个是定义
'''' 一个Domain叫ID,在设计概念模型时把所有的PrimaryKey字段的Domain设置为ID
'''' 类型。
''''
'''' 如果我进行了上面的设置,则在转化为物理模型时需要手工设置Identity,
'''' 最笨的方法是一个表一个表进行设置,最简单的方法是在物理模型中直接对Domain
'''' 进行设置。对Domain进行设置有一个小缺点,就是如果该字段不是主键也不是生
'''' 成的外键,而是一个一般字段,例如表示树状结构的PID,则它也会被设置为
'''' Identity,不过由于这种字段比较少,而且在生成数据库时会发生错误可以提醒
'''' 你进行纠正,所以可以轻松过关而不至于隐藏错误,所以是一种好方法。
''''
'''' 用下面的代码可以给你第三种选择,而不会发生任何错误。
''''*****************************************************************************dim model ''''current model
set model = ActiveModel

If (model Is Nothing) Then
MsgBox "There is no current Model"
ElseIf Not model.IsKindOf(PdPDM.cls_Model) Then
MsgBox "The current model is not an Physical Data model."
Else
ProcessTables model
End If

''''*****************************************************************************
''''函数:ProcessTables
''''功能:递归遍历所有的表
''''*****************************************************************************
sub ProcessTables(folder)
''''处理模型中的表
dim table
for each table in folder.tables
if not table.IsShortCut then
ProcessTable table
end if
next

''''对子目录进行递归
dim subFolder
for each subFolder in folder.Packages
ProcessTables subFolder
next
end sub

''''*****************************************************************************
''''函数:ProcessTable
''''功能:遍历指定table的所有字段,如果该字段是主键但不是外键,则设置为Identity
''''*****************************************************************************
sub ProcessTable(table)
dim col
for each col in table.Columns
''''对于是主键且不是外键的字段设置为Identity(自增长类型)
if col.Primary and not col.ForeignKey then
col.Identity = true
end if
next
end sub


6.不同模型之间添加引用


[img]http://dl2.iteye.com/upload/attachment/0087/5275/1c567e69-d6b5-34aa-946b-7bc3b7b63fb1.jpg[/img]

如上所示,我要让security的模型能引用到当事人的模型,那么可以双击security

[img]http://dl2.iteye.com/upload/attachment/0087/5277/3957c454-44d3-3358-a3f0-c1649ee90d84.jpg[/img]

点击
Related Diagrams

7.PowerDesigner code、name显示设置 及 同时显示办法
菜单->Tool->Model Options->Name Convention->右侧display中选择显示name还是code。

不支持同时显示,但可以选择显示code,然后将name填入stereotype中,变相同时显示。

设置stereotype显示与否:菜单->Tool->Display Preferences->Object View中选择各对象的stereotype是否显示


8.生成的脚本文件(sql文件)编码设置
选择DataBase——Generate DataBase——Format——Text Formatting,选择UTF8


9.powerdesigner 设置字段显示comment注释
在Columns标签下,一排按钮中找到这个按钮:Customize Columns and Filter

[img]http://dl2.iteye.com/upload/attachment/0125/6228/88257139-c09d-3323-aaec-abc451d296bd.png[/img]
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值