PowerDesigner12中生成Mysql的问题记录

ERROR:can't create table './*** .frm'  (errno:121)

 

这个在网上查了一下,解决方法,都是说存储空间错误,drop后create,无效。

 

后仔细检查发现是PowerDesigner自动生成mysql的sql语句的时候产生错误。

 

在pd中建立Physical Data Model的Table,其中在Column Properties的Standard Checks选项中,Default选择的默认值,在生成sql语句的时候直接翻译了,如,在此选择autoincrement,那么生成sql的时候,在对应的字段后面生成如下类似格式,“id int not null default autoincrement”,明显这个错误,应该是“id int not null auto_increment”。

 

 

另外,还有一个powerDesigner的关于创建index的bug。

错误:

当我用mysql4.0时发现生成的代码在导入到mysql里出错,最终发现是如下行引起的

create index Reference_7_FK
(
   account_id
);

 
当然这个是错的.我们只能修改这个bug了.


修改方法:
1.打开 PowerDesigner 12\Resource Files\DBMS\mysql40xdb文件
 找到:

 

 /*==============================================================*/
/* Index: "%referenceCode%_FK"                                            */
/*==============================================================*/
create index %referenceCode%_FK
(
   %fkColumns%
);
 


修改为:

/*==============================================================*/
/* Index: "%referenceCode%_FK"                                            */
/*==============================================================*/
create index %referenceCode%_FK on %TABLE%(%fkColumns%);
 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值